Changes required in publications/demo/pom.xml
In older version there was a separate module (widget-framework-build-tools
) for build tools. This is not required any more.
Because build tools now is a part of Widget Framework Core plugin. So, you have to fix the dependency in the demo
publication pom file. The new dependency is
<dependency> <groupId>com.escenic.widget-framework</groupId> <artifactId>wf-build-tools</artifactId> <version>2.1.0.139063</version> <scope>provided</scope> </dependency>
Build tools used to merge and replaces content types and publication resources from various widgets. So, you have to edit the
merge-content-type, replace-content-type
steps in the publication root pom file. The correct set up for
merge-content-type is
<plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>exec-maven-plugin</artifactId> <version>1.1</version> <executions> <execution> <id>merge-content-type</id> <phase>package</phase> <goals> <goal>java</goal> </goals> </execution> </executions> <configuration> <mainClass>com.escenic.widgetframework.DemoWebappResourceModifier</mainClass> <arguments> <argument>${basedir}/target/demo-core-2.1.0.139063.war</argument> <argument>${basedir}/src/main/webapp/template/widgets</argument> <argument>${basedir}/src/main/webapp/META-INF/escenic/publication-resources/escenic/content-type</argument> <argument>${basedir}/src/main/resources</argument> <argument>/com/escenic/framework/ApplicationResources.properties</argument> </arguments> </configuration> </plugin>
Correct set up for replace-content-type step is
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-antrun-plugin</artifactId> <executions> <execution> <id>replace-content-type</id> <phase>install</phase> <goals> <goal>run</goal> </goals> <configuration> <tasks> <ant dir="${basedir}" antfile="${basedir}/src/main/ant/build.xml" target="extractAndModifyArchive"> <property name="base.dir" value="${basedir}"/> <property name="project.name" value="demo-core"/> <property name="project.version" value="${project.version}"/> <property name="resource.bundle.extract.dir.name" value="resourceBundles"/> </ant> </tasks> </configuration> </execution> </executions> </plugin>
Modify dependency version of widget-framework-core to 2.x. If you have widget-framework-common dependency replace it with wf-engine.
To build the demo publication you don't require any escenic dependencies. So, you should remove all escenic
dependencies from the pom.
Widget Framework dependencies (widget-framework-core/widget-framework-community/widget-framework-mobile) and
widget dependencies should be
present in the pom file. You can remove widget framework core, community taglib dependencies from the pom or
you can use WF 2.x taglib dependencies.
If you use a different version of core, community tags there might be problem.
You should also remove all third party dependencies exceptjdom
. Widget Framework Core
plugin is shipped with all third party
libraries required for itself. If you need any other third party libraries except those you should manage
those yourself. You can check
misc/demo/pom.xml
from WF 2.x distribution as a reference.