Last modified by David Holt on 2022/06/25 01:40

From version 26.1
edited by Lachlan Deck
on 2009/02/20 11:22
Change comment: Fixing pom definition
To version 33.1
edited by Greg.Brown
on 2009/02/18 15:06
Change comment: There is no comment for this version

Summary

Details

Page properties
Author
... ... @@ -1,1 +1,1 @@
1 -XWiki.ldeck
1 +XWiki.gbrown
Content
... ... @@ -13,7 +13,7 @@
13 13  
14 14  One reasonable way to get and maintain the Wonder sources is have a directory which holds all the sources (see here: [[Download Wonder Source>>http://wiki.objectstyle.org/confluence/display/WONDER/Download+Wonder+Source%2C+Build+and+Install]]), then use Maven to install and build Wonder (see here: [[Building the wonder source code with maven]]).
15 15  
16 -Several things you should know, currently:
16 +Several things you should know:
17 17  
18 18  * Wonder is built using a maven "build profile", e.g. "mvn clean install --P wo53" builds things for a WebObjects 5.3.x environment and "mvn clean install --P wo54" builds things for a WebObjects 5.4.x environment.
19 19  * The only frameworks which are different because of this are ERExtensions and WOOgnl.
... ... @@ -21,18 +21,11 @@
21 21  
22 22  With all the tools ready, it's time to make a Wonder application.
23 23  
24 -~1. Make a new project File > New > Other project, choose a Maven project: [[image:wolimmave2.gif]]
24 +1. Make a new project File > New > Other project, choose a Maven project:
25 +1. Hit Next
26 +1. Select an archtype, use the local catalog, select the woapplication-archtype, hit Next:
27 +1. Fill in appropriate parameters for the woapplication-archtype to set up your new application, hit Finish!
25 25  
26 -2. Hit Next
27 -
28 -3. Hit Next again [[image:wolimmavena.gif]]
29 -
30 -4. Select an archtype, use the local catalog, select the woapplication-archtype, hit Next:!wolimmavenb.gif!
31 -
32 -5. Fill in appropriate parameters for the woapplication-archtype to set up your new application, hit Finish!
33 -
34 -[[image:wolimmaven.gif]]
35 -
36 36  The eclipse plugins now create your application!
37 37  
38 38  You should create a WOApplication Run Configuration and add the projects build folder's Java to the classpath as detailed here: [[Maven Running or Debugging as WO Application]], otherwise classes won't be found, etc.
... ... @@ -43,36 +43,18 @@
43 43  {code:xml}
44 44  
45 45   <properties>
46 - <woclassifier>wo54</woclassifier>
47 - <woversion>5.4.3</woversion>
39 + <woversion>5.3.3</woversion>
48 48   <wonderversion>5.0.0-SNAPSHOT</wonderversion>
49 49   </properties>
50 50  
51 - <!-- the dependency management section defines the characteristics of your dependencies to use when referenced elsewhere -->
52 - <!-- See http://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html -->
53 53   <dependencyManagement>
54 - <!-- 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 -->
55 55   <dependencies>
56 - <!-- in the order you'd like -->
57 57   <dependency>
58 - <groupId>wonder.core</groupId>
59 - <artifactId>ERExtensions</artifactId>
60 - <version>${wonderversion}</version>
61 - <classifier>${woclassifier}</classifier>
46 + <groupId>com.webobjects</groupId>
47 + <artifactId>JavaFoundation</artifactId>
48 + <version>${woversion}</version>
62 62   </dependency>
63 63   <dependency>
64 - <groupId>wonder.core</groupId>
65 - <artifactId>ERPrototypes</artifactId>
66 - <version>${wonderversion}</version>
67 - <classifier>${woclassifier}</classifier>
68 - </dependency>
69 - <dependency>
70 - <groupId>wonder.core</groupId>
71 - <artifactId>WOOgnl</artifactId>
72 - <version>${wonderversion}</version>
73 - <classifier>${woclassifier}</classifier>
74 - </dependency>
75 - <dependency>
76 76   <groupId>com.webobjects</groupId>
77 77   <artifactId>JavaWebObjects</artifactId>
78 78   <version>${woversion}</version>
... ... @@ -82,51 +82,55 @@
82 82   <artifactId>JavaEOAccess</artifactId>
83 83   <version>${woversion}</version>
84 84   </dependency>
60 + <dependency>
61 + <groupId>wonder.core</groupId>
62 + <artifactId>ERExtensions</artifactId>
63 + <version>${wonderversion}</version>
64 + <classifier>wo53</classifier>
65 + </dependency>
85 85   <dependency>
86 - <groupId>com.webobjects</groupId>
87 - <artifactId>JavaFoundation</artifactId>
88 - <version>${woversion}</version>
67 + <groupId>wonder.core</groupId>
68 + <artifactId>ERPrototypes</artifactId>
69 + <version>${wonderversion}</version>
70 +
89 89   </dependency>
90 90   </dependencies>
91 91   </dependencyManagement>
92 -
93 - <!-- now you just reference the groupId and artifactId of each dependency required. This will work for any child pom also. -->
94 - <!-- See http://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html -->
74 +<!-- Only ERExtensions and WOOgnl need a wo53 or wo54 classifier -->
95 95   <dependencies>
96 96   <dependency>
97 97   <groupId>wonder.core</groupId>
98 98   <artifactId>ERExtensions</artifactId>
99 - <classifier>${wonderclassifier}</classifier>
79 + <version>${wonderversion}</version>
80 + <classifier>wo53</classifier>
100 100   </dependency>
101 101   <dependency>
102 102   <groupId>wonder.core</groupId>
103 - <artifactId>WOOgnl</artifactId>
104 - <classifier>${wonderclassifier}</classifier>
105 - </dependency>
106 - <dependency>
107 - <groupId>wonder.core</groupId>
108 108   <artifactId>ERPrototypes</artifactId>
85 + <version>${wonderversion}</version>
109 109   </dependency>
110 110   <dependency>
111 111   <groupId>com.webobjects</groupId>
112 112   <artifactId>JavaFoundation</artifactId>
90 + <version>${woversion}</version>
113 113   </dependency>
114 114   <dependency>
115 115   <groupId>com.webobjects</groupId>
116 116   <artifactId>JavaWebObjects</artifactId>
95 + <version>${woversion}</version>
117 117   </dependency>
118 118   <dependency>
119 119   <groupId>com.webobjects</groupId>
120 120   <artifactId>JavaEOAccess</artifactId>
100 + <version>${woversion}</version>
121 121   </dependency>
102 +
122 122   </dependencies>
123 123  
124 124  {code} Fix the versions and classifiers in the pom to be the correct values.
125 125  
126 -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}er.extensions{code}. So just right click on These three files and choose Source > Organize Imports which should, as of this writing, make them {code}import er.extensions.appserver.ERX...{code}
107 +2. Fix the Application, Session, DirectAction jave files. They all should: {code}import er.extensions.appserver.ERX????{code} But the ".appserver." is left out of the import statements.
127 127  
128 128  3. Possibly change web components to extend er.extensions.components.ERXComponent instead of the standard WOComponent.
129 -4. Possible classpath issues; the eclipse component editor has multiple Component and Display Group tabs.?
130 -5. Main component is NSMacOSRomanStringEncoding, non-Maven Wonder apps use "UTF-8" in the woo.
131 131  
132 132  {{/note}}