Child pages
  • Maven Creating Wonder Applications

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Note
titleWarning

The woapplication-archtype is under construction, so you must fix a few things.

  1. Fix the pom.xml. Delete the properties and dependencies sections that the woapplication-archtype created, and paste this into the pom:
    Code Block
    xml
    xml
    ...
    	<properties>
    		<woversion>5.4.3</woversion>
    		<wonderclassifier>wo54</wonderclassifier>
    		<wonderversion>5.0.0-SNAPSHOT</wonderversion>
    	</properties>
    
    	<!-- the dependency management section defines the characteristics of your dependencies to use when referenced elsewhere -->
    	<!-- See http://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html -->
    	<dependencyManagement>
    		<!-- Only ERExtensions and WOOgnl need a wo53 or wo54 classifier but adding it for all WOnder dependencies safeguards it for any future changes to WOnder -->
    		<dependencies>
    			<!-- in the order you'd like -->
    			<dependency>
    				<groupId>wonder.core</groupId>
    				<artifactId>ERExtensions</artifactId>
    				<version>${wonderversion}</version>
    				<classifier>${wonderclassifier}</classifier>
    			</dependency>
    			<dependency>
    				<groupId>wonder.core</groupId>
    				<artifactId>WOOgnl</artifactId>
    				<version>${wonderversion}</version>
    				<classifier>${wonderclassifier}</classifier>
    			</dependency>
    			<dependency>
    				<groupId>wonder.core</groupId>
    				<artifactId>ERPrototypes</artifactId>
    				<version>${wonderversion}</version>
    			</dependency>
    			<dependency>
    				<groupId>com.webobjects</groupId>
    				<artifactId>JavaWebObjects</artifactId>
    				<version>${woversion}</version>
    			</dependency>
    			<dependency>
    				<groupId>com.webobjects</groupId>
    				<artifactId>JavaEOAccess</artifactId>
    				<version>${woversion}</version>
    			</dependency>
    			<dependency>
    				<groupId>com.webobjects</groupId>
    				<artifactId>JavaFoundation</artifactId>
    				<version>${woversion}</version>
    			</dependency>
    		</dependencies>
    	</dependencyManagement>
    
    	<!-- now you just reference the groupId and artifactId of each dependency required. This will work for any child pom also. -->
    	<!-- See http://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html -->
    	<dependencies>
    		 <dependency>
    			<groupId>wonder.core</groupId>
    			<artifactId>ERExtensions</artifactId>
    			<classifier>${wonderclassifier}</classifier>
    		</dependency>
    		<dependency>
    			<groupId>wonder.core</groupId>
    			<artifactId>WOOgnl</artifactId>
    			<classifier>${wonderclassifier}</classifier>
    		</dependency>
    		<dependency>
    			<groupId>wonder.core</groupId>
    			<artifactId>ERPrototypes</artifactId>
    		</dependency>
    		<dependency>
    			<groupId>com.webobjects</groupId>
    			<artifactId>JavaFoundation</artifactId>
    		</dependency>
    		<dependency>
    			<groupId>com.webobjects</groupId>
    			<artifactId>JavaWebObjects</artifactId>
    		</dependency>
    		<dependency>
    			<groupId>com.webobjects</groupId>
    			<artifactId>JavaEOAccess</artifactId>
    		</dependency>
    	</dependencies>
    
    
    Fix the versions and classifiers in the pom to be the correct values.

2. Fix the Application, Session, DirectAction jave files import statements. As of this writing the import statements are incorrect for Wonder 5.0 which refactored all its classes into packages other than

Code Block
er.extensions

. So just right click on These three files and choose Source > Organize Imports which should, as of this writing, make them

Code Block
import er.extensions.appserver.ERX...

3. Possibly change web components to extend er.extensions.components.ERXComponent instead of the standard WOComponent.
4. Possible classpath issues; the eclipse component editor has multiple Component and Display Group tabs.?The "Properties" file is blank, you can copy one from a non Maven Wonder Application.
5. Main component is NSMacOSRomanStringEncoding, non-Maven Wonder apps use "UTF-8" in the woo.