WOApplication

Version 45.1 by Ulrich Köster on 2007/02/27 03:00
Warning: For security reasons, the document is displayed in restricted mode as it is not the current version. There may be differences and errors due to this.

WOApplication Task Manual

This has been transcribed by Andrew Lindesay from the old WOProject site.

Description

WOApplication is an Ant task to build WebObjects applications from a set of files. It does not enforce any particular project structure and can be used to create applications without using the ProjectBuilder or XCode.

Properties

WOApplication behavior depends on various properties in the wobuild.properties file that specify common locations of the frameworks used by the application. These properties can be initialized with the ant script woproperties.xml. Per default the woapplication task expects this file in $user.home/Library/wobuild.properties. If no file is found the woapplication task resolves the property WOBUILDPROPERTIES from the java properties and the environment(in this order) to find the file.

Property from the wobuild.properties fileDescriptionDefault
wo.wosystemrootUsually this is a WebObjects installation directory, like "C:pple".NEXTROOT environment variable, or root directory "/".
wo.localrootUsually this is a "Local" directory under the directory specified by "wo.woroot".$wo.woroot/Local
wo.homerootUsually this is a user home directory.$user.home

Parameters

AttributeDescriptionRequired
nameName of the application (without .woa extension).Yes
chmodOptional value for the chmod command executed by the WOApplication task. The default is "gu+x". The chmod command is only executed on the first build of the application and only on "Unix" platforms. The default is "750".No
destDirDestination directory where the application woa should be created.Yes
wsDestDirDestination directory where WebServerResorces should be copied during split install (presense of this parameter will trigger split install). WebServerResources will be created under wsDestDir/WebObjects/AppName.woa/Contents/.No
principalClassSubclass of WOApplication to use.Application
customInfoPListContentString to append to the Info.plist.No
stdFrameworksIf set to true, a set of standard frameworks will be associated with the deployed application (default is true). "Standard" frameworks are: JavaWebObjects, JavaWOExtensions, JavaEOAccess, JavaEOControl, JavaFoundation, JavaJDBCAdaptor, JavaXML.No
jvmOptionsString for the JVM options in the classpath.No
webXMLGenerate web.xmlNo
webXMLWOROOTOptional parameter for the web.xmlNo
webXMLLOCALROOTOptional parameter for the web.xmlNo
webXMLWOAINSTALLROOTOptional parameter for the web.xmlNo
webXMLWOAppModeOptional parameter for the web.xmlNo
webXMLWOtaglibOptional parameter for the web.xmlNo
webXMLCustomContentOptional parameter for the web.xmlNo
lib.....No
versionVersion for the Info.plistNo
frameworksBaseURL.....No
startupScriptName.....No

Nested Elements

classes

The nested classes element specifies a FileSet. All files included in this fileset will end up in the Contents/Resources/Java/.jar  file of the application.

resources

The nested resources element specifies a FileSet. All files included in this fileset will end up in the Contents/Resources directory of the application. For the discussion of resource localization issues follow this link.

wsresources

The nested wsresources element specifies a FileSet. All files included in this fileset will end up in the Contents/WebServerResources directory of the application. For the discussion of resource localization issues follow this link.

frameworks

The nested frameworks is a FrameworkSet structure that specifies the names of the WebObjects Frameworks that this application is dependant upon. The jar files from these frameworks will be referenced in varios platform-specific depoyment files (such as CLASSPATH.TXT), and specified in the web.xml classpath if an application is deployed as a servlet. When building a FileSet, path should match up to the ".framework" directory (no need to match individual JAR files).

lib

The nested lib element specifies a FileSet. This should be a fileset of jar libraries required by your application. All files in this fileset will end up in the Resources/Java folder of the application, and will be included on the classpath for this application.

Examples

Create an application "MyApp" with a set of standard frameworks:

Unknown macro: noformat. Click on this message for details.

Create an application "MyApp" with no implicit standard frameworks and a set of custom frameworks located under HOMEROOT (defined from the value of wo.homeroot property):

Unknown macro: noformat. Click on this message for details.