Then your a lucky man.
But how did Tomcat find your Application class. The Windows class path
file has the same error as the one that is fixed in the <!-- fix the
Macos*ClassPath.txt files --> section.
Stefan
David Avendasora schrieb:
> Interesting. I have been deploying to a WAR that runs in Tomcat on
> Windows Server 2000/2003 and OS X and I don't have to make any of
> these changes.
>
> Dave
>
>
> On Aug 27, 2008, at 7:41 AM, Stefan Klein wrote:
>
>> Hi,
>>
>> I tried out the war generation (Eclipse 3.3; WOLips 3.3.5390, WinXP,
>> WO 5.2.4).
>> To get it work i had to change some lines.
>> You can find the changes in the attachment (search for SWK).
>> I think some of the changes are relevant for Mac OS as well.
>>
>> Stefan
>> <project name="FlussWin54" default="build" basedir=".">
>>
>> <!-- main targets -->
>> <!-- add optional targets to depends list if needed -->
>> <target name="build"
>> depends="setProps,init.build,build.woapp,ssdd,war" />
>>
>> <target name="compileAndBuild"
>> depends="setProps,init.build,compile,build.woapp,ssdd,war" />
>>
>> <target name="install"
>> depends="setProps,init.install,build.woapp,ssdd,war" />
>>
>> <target name="clean" depends="setProps">
>> <delete dir="dist" />
>> </target>
>>
>> <!-- property determination -->
>> <target name="setProps">
>> <property
>> file="${user.home}${file.separator}build.properties" />
>> <property file="build.properties" />
>> <property
>> file="${user.home}${file.separator}Library${file.separator}wobuild.properties"
>> />
>> <condition property="wo.properties.check.failed">
>> <not>
>> <and>
>> <isset property="wo.wosystemroot" />
>> <isset property="wo.wolocalroot" />
>> </and>
>> </not>
>> </condition>
>> <fail message="Could not find
>> ${user.home}${file.separator}Library${file.separator}wobuild.properties."
>> if="wo.properties.check.failed" />
>> <property name="install.dir"
>> value="${wo.wolocalroot}/Library/WebObjects/Applications" />
>> </target>
>>
>> <!-- basic initializations -->
>> <target name="init.install">
>> <tstamp />
>> <property name="dest.dir" value="${install.dir}" />
>> </target>
>>
>> <target name="init.build">
>> <tstamp />
>> <property name="dest.dir" value="dist" />
>> </target>
>>
>> <!-- woproject tasks -->
>> <target name="build.woapp">
>>
>> <taskdef name="woapplication"
>> classname="org.objectstyle.woproject.ant.WOApplication">
>> </taskdef>
>>
>> <!-- add webXML="true" to generate a web.xml file -->
>> <woapplication name="${project.name}" stdFrameworks="false"
>> destDir="${dest.dir}"
>> customInfoPListContent="${customInfoPListContent}"
>> principalClass="${principalClass}" webXML="${webXML}"
>> webXML_CustomContent="${webXML_CustomContent}">
>> <classes dir="${classes.dir}">
>> <patternset>
>> <includesfile
>> name="woproject/classes.include.patternset" />
>> <excludesfile
>> name="woproject/classes.exclude.patternset" />
>> </patternset>
>> </classes>
>> <wsresources dir="WebServerResources">
>> <patternset>
>> <include name="**/*" />
>> <exclude name="CVS" />
>> <exclude name=".svn" />
>> <excludesfile
>> name="woproject/wsresources.exclude.patternset" />
>> </patternset>
>> </wsresources>
>> <resources dir="Resources">
>> <patternset>
>> <include name="**/*" />
>> <exclude name="CVS" />
>> <exclude name=".svn" />
>> <excludesfile
>> name="woproject/resources.exclude.patternset" />
>> </patternset>
>> </resources>
>> <resources dir="Components">
>> <patternset>
>> <include name="**/*" />
>> <exclude name="CVS" />
>> <exclude name=".svn" />
>> <excludesfile
>> name="woproject/resources.exclude.patternset" />
>> </patternset>
>> </resources>
>> <frameworks root="${wo.wolocalroot}"
>> embed="${servletDeployment}">
>> <patternset>
>> <includesfile
>> name="woproject/ant.frameworks.wo.wolocalroot" />
>> </patternset>
>> </frameworks>
>> <frameworks root="${user.home}"
>> embed="${servletDeployment}">
>> <patternset>
>> <includesfile
>> name="woproject/ant.frameworks.user.home" />
>> </patternset>
>> </frameworks>
>> <frameworks root="${wo.wosystemroot}"
>> embed="${servletDeployment}">
>> <patternset>
>> <includesfile
>> name="woproject/ant.frameworks.wo.wosystemroot" />
>> </patternset>
>> </frameworks>
>> <otherclasspath root="${wo.wosystemroot}">
>> <patternset>
>> <includesfile
>> name="woproject/ant.classpaths.wo.wosystemroot" />
>> </patternset>
>> </otherclasspath>
>> <lib dir="Libraries">
>> <include name="*.jar" />
>> <exclude name="**/*.woa/**" />
>> </lib>
>> </woapplication>
>> </target>
>>
>> <!-- optional targets -->
>>
>> <!-- war target-->
>> <!-- To use this target remove the if="${never}" statement and
>> follow the instructions for the ssdd target -->
>> <target name="war" if="servletDeployment" depends="ssdd">
>> <war destfile="${dest.dir}/${project.name}.war"
>> webxml="${dest.dir}/${project.name}/WEB-INF/web.xml">
>> <fileset dir="${dest.dir}/${project.name}">
>> <include name="**" />
>> </fileset>
>> </war>
>> </target>
>>
>> <!-- ssdd target-->
>> <!-- To use this target
>> 1) remove the if="${never}" statement
>> 2) change embed=true in the woapp target above
>> 3) create the LICENSE in your project directory
>> 4) add JavaWOJSPServlet in your WOFrameworks build path
>> 5) Edit the build.properties file
>> 6) set webXML = true
>> -->
>> <target name="ssdd" if="servletDeployment" depends="build.woapp">
>> <mkdir dir="${dest.dir}/${project.name}/WEB-INF/classes" />
>> <mkdir dir="${dest.dir}/${project.name}/WEB-INF/tlds" />
>> <copy todir="${dest.dir}/${project.name}/WEB-INF/">
>> <fileset dir="${dest.dir}/${project.name}.woa/Contents/">
>> <include name="web.xml" />
>> </fileset>
>> </copy>
>> <copy todir="${dest.dir}/${project.name}/WEB-INF/">
>> <fileset dir="."> <!-- SWK fix: replace ".." with "." -->
>> <include name="LICENSE" />
>> </fileset>
>> </copy>
>> <copy todir="${dest.dir}/${project.name}/WEB-INF/">
>> <fileset dir="${dest.dir}">
>> <include name="${project.name}.woa/**" />
>> </fileset>
>> </copy>
>> <!-- copy the frameworks to the WEBINFROOT/Library directory -->
>> <copy todir="${dest.dir}/${project.name}/WEB-INF/">
>> <fileset dir="${dest.dir}/${project.name}.woa/Contents">
>> <include name="Library/**" />
>> </fileset>
>> </copy>
>> <copy todir="${dest.dir}/${project.name}/WEB-INF/">
>> <fileset dir="${dest.dir}/${project.name}.woa">
>> <include name="Resources/**" />
>> </fileset>
>> </copy>
>> <copy todir="${dest.dir}/${project.name}/WEB-INF/lib/">
>> <fileset dir="${dest.dir}/${project.name}/WEB-INF">
>> <include name="**/Resources/**/*.jar" />
>> </fileset>
>> <mapper type="flatten" />
>> </copy>
>>
>> <!-- Get the necessary Frameworks from the webobjects system
>> root instead of the project wrapper -->
>> <copy todir="${dest.dir}/${project.name}/WEB-INF/lib"
>> file="${wo.wosystemroot}/Library/Frameworks/JavaWOJSPServlet.framework/WebServerResources/Java/JavaWOJSPServlet_client.jar"
>> />
>>
>> <copy todir="${dest.dir}/${project.name}/WEB-INF/tlds">
>> <fileset
>> dir="${wo.wosystemroot}/Library/Frameworks/JavaWOJSPServlet.framework/Resources/">
>>
>> <include name="WOtaglib_1_0.tld" />
>> </fileset>
>> </copy>
>> <!-- the WebObject Extensions -->
>> <copy todir="${dest.dir}/${project.name}/WEB-INF/lib">
>> <fileset
>> dir="${wo.wolocalroot}/Library/WebObjects/Extensions/"><!-- SWK fix:
>> added ${wo.wolocalroot} -->
>> <include name="*.jar" />
>> <exclude name="servlet.jar" />
>> </fileset>
>> <mapper type="flatten" />
>> </copy>
>>
>>
>> <!-- fix the Macos*ClassPath.txt files -->
>>
>> <replaceregexp
>> file="${dest.dir}/${project.name}/WEB-INF/${project.name}.woa/Contents/MacOS/MacOSClassPath.txt"
>> match="APPROOT/Resources/Java/${project.name.lowercase}.jar"
>> replace="APPROOT/${project.name}.woa/Contents/Resources/Java/${project.name.lowercase}.jar"
>> byline="true" />
>>
>> <replaceregexp
>> file="${dest.dir}/${project.name}/WEB-INF/${project.name}.woa/Contents/MacOS/MacOSXServerClassPath.txt"
>> match="APPROOT/Resources/Java/${project.name.lowercase}.jar"
>> replace="APPROOT/${project.name}.woa/Contents/Resources/Java/${project.name.lowercase}.jar"
>> byline="true" />
>>
>> <!-- SWK fix Windows\CLSSPATH.TXT -->
>> <replaceregexp
>> file="${dest.dir}/${project.name}/WEB-INF/${project.name}.woa/Contents/Windows/CLSSPATH.txt"
>> match="APPROOT\\Resources\\Java\\${project.name.lowercase}.jar"
>> replace="APPROOT/${project.name}.woa/Contents/Resources/Java/${project.name.lowercase}.jar"
>> byline="true" />
>>
>> <!-- SWK fix the UNIXClassPath.txt files -->
>> <replaceregexp
>> file="${dest.dir}/${project.name}/WEB-INF/${project.name}.woa/Contents/Unix/UNIXClassPath.txt"
>> match="APPROOT/Resources/Java/${project.name.lowercase}.jar"
>> replace="APPROOT/${project.name}.woa/Contents/Resources/Java/${project.name.lowercase}.jar"
>> byline="true" />
>>
>> <!-- SWK fix Windows : Change the Backslash -->
>> <replaceregexp
>> file="${dest.dir}/${project.name}/WEB-INF/web.xml"
>> match="WEBINFROOT//" replace="WEBINFROOT/" byline="true" />
>> <replaceregexp
>> file="${dest.dir}/${project.name}/WEB-INF/web.xml"
>> match="\\Library/WebObjects" replace="/Library/WebObjects"
>> byline="true" />
>> <replaceregexp
>> file="${dest.dir}/${project.name}/WEB-INF/web.xml"
>> match="\\Resources\\Java\\" replace="/Resources/Java/" byline="true" />
>>
>> <!-- SWK fix : Path to WOtaglib -->
>> <replaceregexp
>> file="${dest.dir}/${project.name}/WEB-INF/web.xml"
>> match="/WEB-INF/tlds//WEB-INF/tlds/WOtaglib_1_0.tld"
>> replace="/WEB-INF/tlds/WOtaglib_1_0.tld" byline="true" />
>>
>> <!-- fix the web.xml file: the app itself needs
>> project.name/Contents -->
>>
>> <replaceregexp
>> file="${dest.dir}/${project.name}/WEB-INF/web.xml"
>> match="WEBINFROOT/Resources/Java/${project.name.lowercase}.jar"
>> replace="WEBINFROOT/${project.name}.woa/Contents/Resources/Java/${project.name.lowercase}.jar"
>> byline="true" />
>>
>> <!-- fix the web.xml file to remove the extra Frameworks/
>> directory level for the frameworks -->
>>
>> <replaceregexp
>> file="${dest.dir}/${project.name}/WEB-INF/web.xml"
>> match="WEBINFROOT/Frameworks//" replace="WEBINFROOT/" byline="true" />
>>
>> </target>
>>
>> <target name="compile" depends="setProps,init.build">
>> <taskdef name="wocompile"
>> classname="org.objectstyle.woproject.ant.WOCompile" />
>> <mkdir dir="bin" />
>> <wocompile srcdir="Sources" destdir="bin">
>> <frameworks root="${wo.dir.user.home.library.frameworks}">
>> <patternset>
>> <includesfile
>> name="woproject/ant.frameworks.user.home" />
>> </patternset>
>> </frameworks>
>> <frameworks root="${wo.wolocalroot}">
>> <patternset>
>> <includesfile
>> name="woproject/ant.frameworks.wo.wolocalroot" />
>> </patternset>
>> </frameworks>
>> <frameworks root="${wo.wosystemroot}">
>> <patternset>
>> <includesfile
>> name="woproject/ant.frameworks.wo.wosystemroot" />
>> </patternset>
>> </frameworks>
>> <classpath>
>> <fileset dir="${wo.wolocalroot}">
>> <patternset>
>> <includesfile
>> name="woproject/ant.frameworks.wo.wolocalroot" />
>> </patternset>
>> </fileset>
>> <fileset dir="Libraries">
>> <filename name="**/*.jar" />
>> </fileset>
>> </classpath>
>> </wocompile>
>> </target>
>> </project>
>
>
This archive was generated by hypermail 2.0.0 : Wed Aug 27 2008 - 10:38:43 EDT