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.0.0</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.0.0.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.0. 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.0 taglib dependencies.
If you use a different version of core, community tags there might be problem.
You should also remove all third party dependencies except jdom
. 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.0 distribution as a reference.