Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 5.3
Warning

This is deprecated information!

Table of Contents
maxLevel1

ProjectBuilder and XCode

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. It isn't as hard as you might think, and WOLips is a much more powerful WebObjects IDE.

Installing WebObjects and WOLips

  1. Download Golipse
    Golipse (source) will fetch the needed version of Eclipse, WOLips and other tools for WebObjects development.
Note
title32-bit computers

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"

  1. Install the WebObjects
    The best way to install the WebObjects frameworks is according to these instructions.
  2. Start Eclipse and switch to the WOLips perspective.
    • Under the Window menu, select Open Perspective > Other....
    • Select WOLips and click Ok.

      Note
      titleWOLips Perspective

      If you don't switch to the WOLips perspective, you won't be able to create new WebObjects projects.

Info
titleXcode & WebObjects

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.

Anchor
javamonitor
javamonitor

Running Monitor and wotaskd on Mac OS X

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.

Make sure Web Sharing is enabled in the Sharing panel in System Preferences (note: 10.5 comes with Apache 2.2 as the default).

Edit /etc/apache2/httpd.conf (if you did a fresh install, you may already have these - search httpd.conf first)

Search for rewrite_module, and above it, add this line:

Code Block
LoadModule WebObjects_module /System/Library/WebObjects/Adaptors/Apache2.2/mod_WebObjects.so

Go to the very end and add:

Code Block
Include /System/Library/WebObjects/Adaptors/Apache2.2/apache.conf

Search for "Directory /" and comment out the Order and Deny lines:

Code Block
<Directory />
    Options FollowSymLinks
    AllowOverride None
    #Order deny,allow
    #Deny from all
</Directory>

Restart apache

Code Block
sudo apachectl graceful

If you run ps auxw | grep httpd you should see apache now running

Create /Library/LaunchDaemons/com.apple.webobjects.wotaskd.plist with:
(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)

Code Block
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>Disabled</key>
	<false/>
	<key>GroupName</key>
	<string>appserverusr</string>
	<key>Label</key>
	<string>com.apple.webobjects.wotaskd</string>
	<key>OnDemand</key>
	<false/>
	<key>Program</key>
	<string>/System/Library/WebObjects/JavaApplications/wotaskd.woa/wotaskd</string>
	<key>ProgramArguments</key>
	<array>
		<string>wotaskd</string>
		<string>-WOPort</string>
		<string>1085</string>
	</array>
	<key>ServiceIPC</key>
	<false/>
	<key>UserName</key>
	<string>appserver</string>
</dict>
</plist>

Create /Library/LaunchDaemons/com.apple.webobjects.womonitor.plist with:
(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)

Code Block
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>Disabled</key>
	<false/>
	<key>GroupName</key>
	<string>appserverusr</string>
	<key>Label</key>
	<string>com.apple.webobjects.womonitor</string>
	<key>OnDemand</key>
	<false/>
	<key>Program</key>
	<string>/System/Library/WebObjects/JavaApplications/JavaMonitor.woa/JavaMonitor</string>
	<key>ProgramArguments</key>
	<array>
		<string>JavaMonitor</string>
		<string>-WOPort</string>
		<string>56789</string>
	</array>
	<key>ServiceIPC</key>
	<false/>
	<key>UserName</key>
	<string>appserver</string>
</dict>
</plist>

Start the launchd daemons :
(you may need to sudo here)

Code Block
launchctl load /Library/LaunchDaemons/com.apple.webobjects.wotaskd.plist
launchctl load /Library/LaunchDaemons/com.apple.webobjects.womonitor.plist

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:

Code Block
http://localhost:56789