Wiki source code of WO 5.4 Getting Started

Version 30.1 by Timothy Worman on 2013/05/01 19:19

Hide last authors
Timothy Worman 29.1 1 {{warning}}
2 This is deprecated information!
3 {{/warning}}
Gavin Eadie 23.1 4
Timothy Worman 29.1 5 {{toc maxLevel="1"/}}
6
Gavin Eadie 23.1 7 = ProjectBuilder and XCode =
8
Timothy Worman 29.1 9 ProjectBuilder and Xcode are no longer supported IDEs for WebObjects development or deployment. While legacy projects may still use it there is little, if any, support available for it. Existing projects (except Objective-C WebObjects projects, of course) should be [[migrated to WOLips>>doc:WOL.XcodeMigration]]. It isn't as hard as you might think, and WOLips is a much more powerful WebObjects IDE.
Gavin Eadie 23.1 10
11 = Installing WebObjects and WOLips =
12
Timothy Worman 29.1 13 1. (((
14 ====== Download Golipse ======
Gavin Eadie 23.1 15
Timothy Worman 29.1 16 [[Golipse>>url:http://wocommunity.org/documents/tools/Golipse.app_build_14.zip||shape="rect"]] ([[source>>url:https://github.com/wocommunity/Golipse||shape="rect"]]) will fetch the needed version of Eclipse, WOLips and other tools for WebObjects development.
17 )))
18
Gavin Eadie 23.1 19 {{note title="32-bit computers"}}
Timothy Worman 29.1 20 By default Golipse will download and install a 64-bit version of Eclipse. If you have an older 32-bit machine you can specify the download URL for the Eclipse package in 'Golipse > Preferences'. The latest 32-bit package is "http:~/~/ftp.osuosl.org/pub/eclipse/eclipse/downloads/drops/R-3.6.2-201102101200/eclipse-SDK-3.6.2-macosx-cocoa.tar.gz"
Gavin Eadie 23.1 21 {{/note}}
22
Timothy Worman 29.1 23 1. (((
24 ====== Install the WebObjects ======
Gavin Eadie 23.1 25
Timothy Worman 29.1 26 The best way to install the WebObjects frameworks is according to [[these instructions>>doc:WOL.Using WOLips With Multiple Versions of WebObjects]].
27 )))
28 1. (((
29 ====== Start Eclipse and switch to the WOLips perspective. ======
30
31 * Under the //Window// menu, select //Open Perspective > Other...//.
32 [[image:attach:PerpectiveMenu.png]]
33 *
34
35 ====== Select //WOLips// and click //Ok//. ======
36
37 [[image:attach:PerspectiveChoices.png]]
38
Gavin Eadie 23.1 39 {{note title="WOLips Perspective"}}
40 If you don't switch to the WOLips perspective, you won't be able to create new WebObjects projects.
41 {{/note}}
Timothy Worman 29.1 42 )))
Gavin Eadie 23.1 43
44 {{info title="Xcode & WebObjects"}}
45 Xcode is no longer the supported IDE for WebObjects development or deployment. However, downloading it and installing it will install tools debugging tools that you might find useful.
46
Timothy Worman 29.1 47 * Apple Developer Site (Free): [[http:~~/~~/developer.apple.com/xcode/>>url:http://developer.apple.com/xcode/||shape="rect"]]
48 * Mac OS X App Store (Free): [[http:~~/~~/itunes.apple.com/us/app/xcode/id448457090>>url:http://itunes.apple.com/us/app/xcode/id448457090||shape="rect"]]
Gavin Eadie 23.1 49 {{/info}}
50
51
Timothy Worman 29.1 52
53 {{id name="javamonitor"/}}
54
Gavin Eadie 23.1 55 = Running Monitor and wotaskd on Mac OS X =
56
Timothy Worman 29.1 57 Monitor and wotaskd are installed, but the launchd scripts to start them are not installed. You can grab them from a 10.5 Server installation, or follow those instructions.
Gavin Eadie 23.1 58
59 Make sure //Web Sharing// is enabled in the //Sharing// panel in //System Preferences// (note: 10.5 comes with Apache 2.2 as the default).
60
61 Edit ///etc/apache2/httpd.conf// (if you did a fresh install, you may already have these - search httpd.conf first)
62
Timothy Worman 29.1 63 Search for rewrite_module, and above it, add this line:
Gavin Eadie 23.1 64
65 {{code}}
66
67 LoadModule WebObjects_module /System/Library/WebObjects/Adaptors/Apache2.2/mod_WebObjects.so
68
69 {{/code}}
70
71 Go to the very end and add:
72
73 {{code}}
74
75 Include /System/Library/WebObjects/Adaptors/Apache2.2/apache.conf
76
77 {{/code}}
78
79 Search for "Directory /" and comment out the Order and Deny lines:
80
81 {{code}}
82
83 <Directory />
84 Options FollowSymLinks
85 AllowOverride None
86 #Order deny,allow
87 #Deny from all
88 </Directory>
89
90 {{/code}}
91
92 Restart apache
93
94 {{code}}
95
96 sudo apachectl graceful
97
98 {{/code}}
99
Timothy Worman 29.1 100 If you run //ps auxw | grep httpd// you should see apache now running
Gavin Eadie 23.1 101
102 Create ///Library/LaunchDaemons/com.apple.webobjects.wotaskd.plist// with:
Timothy Worman 29.1 103 (for OSX 10.5 make sure the permissions of this file are 644 system/wheel/everyone otherwise launchctl will throw a "dubious permissions" error when you try to load the plist with the commands that follow)
Gavin Eadie 23.1 104
105 {{code}}
106
107 <?xml version="1.0" encoding="UTF-8"?>
108 <!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
109 <plist version="1.0">
110 <dict>
111 <key>Disabled</key>
112 <false/>
113 <key>GroupName</key>
114 <string>appserverusr</string>
115 <key>Label</key>
116 <string>com.apple.webobjects.wotaskd</string>
117 <key>OnDemand</key>
118 <false/>
119 <key>Program</key>
120 <string>/System/Library/WebObjects/JavaApplications/wotaskd.woa/wotaskd</string>
121 <key>ProgramArguments</key>
122 <array>
123 <string>wotaskd</string>
124 <string>-WOPort</string>
125 <string>1085</string>
126 </array>
127 <key>ServiceIPC</key>
128 <false/>
129 <key>UserName</key>
130 <string>appserver</string>
131 </dict>
132 </plist>
133
134 {{/code}}
135
136 Create ///Library/LaunchDaemons/com.apple.webobjects.womonitor.plist// with:
Timothy Worman 29.1 137 (for OSX 10.5 make sure the permissions of this file are 644 system/wheel/everyone otherwise launchctl will throw a "dubious permissions" error when you try to load the plist with the commands that follow)
Gavin Eadie 23.1 138
139 {{code}}
140
141 <?xml version="1.0" encoding="UTF-8"?>
142 <!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
143 <plist version="1.0">
144 <dict>
145 <key>Disabled</key>
146 <false/>
147 <key>GroupName</key>
148 <string>appserverusr</string>
149 <key>Label</key>
150 <string>com.apple.webobjects.womonitor</string>
151 <key>OnDemand</key>
152 <false/>
153 <key>Program</key>
154 <string>/System/Library/WebObjects/JavaApplications/JavaMonitor.woa/JavaMonitor</string>
155 <key>ProgramArguments</key>
156 <array>
157 <string>JavaMonitor</string>
158 <string>-WOPort</string>
159 <string>56789</string>
160 </array>
161 <key>ServiceIPC</key>
162 <false/>
163 <key>UserName</key>
164 <string>appserver</string>
165 </dict>
166 </plist>
167
168 {{/code}}
169
170 Start the launchd daemons :
Timothy Worman 29.1 171 (you may need to sudo here)
Gavin Eadie 23.1 172
173 {{code}}
174
175 launchctl load /Library/LaunchDaemons/com.apple.webobjects.wotaskd.plist
176 launchctl load /Library/LaunchDaemons/com.apple.webobjects.womonitor.plist
177
178 {{/code}}
179
Timothy Worman 29.1 180 If you run "ps auxw | grep java" you should see wotaskd and java monitor now running. You should be able to connect to Monitor by this URL:
Gavin Eadie 23.1 181
182 {{code}}
183
184 http://localhost:56789
185
186 {{/code}}