G
Harkness, David wrote:
Umm, can you have a target name with a space in it? Even if you can, I wouldn't recommend it. Try renaming it to "Prepare-Build" and see what happens. It looks like the EJBDoclet task goes to run, but it gets confused by the depends="Prepare Build" part. I'm just guessing...
Dave
-----Original Message-----
From: Gerald D. Anderson [mailto:[EMAIL PROTECTED] Sent: Thursday, June 12, 2003 10:40 AM
To: [EMAIL PROTECTED]
Subject: Major frustration.
Hey all,
Thanks for reading, I'm about to the point of homicide/suicide with this thing. Trying to move to Xdoclet 1.2b2 from 1.1 so that I can get the benefit of some of the newer tags (autoincrement, etc) Here's the setup.
Xdoclet-1.2b2 (downloaded 6/11/03)
Ant-1.5.3
IntelliJ's IDEA 3.0.4 (IDE. Dropped the ant-1.5.3.jar into replace the default ant.jar (same problem with default))
Linux (RH9)
IBM J2RE 1.4.1
jboss-3.2.1 if you're curious
Here's the important cuts from the files (anything in [ ] is editorial addition):
ant.properties (is imported in build.xml) CODE tags added for clarity IF you're seeing this as HTML. .they're not XML.
<code> Set the path to the root directory of the XDoclet distribution (see # http://www.sf.net/projects/xdoclet) xdoclet.home=/home/gander/usr/opt/xdoclet
# Set this to "true" when you want to force the rebuild of the XDoclet generated
# files (see XDoclet's <ejbdoclet> attribute "force") xdoclet.force=true
</code>
Listing of lib path to eliminate any doubt of idiocy (or prove idiocy, yes path is to xdoclet, this is xdoclet/lib. . .you'll see) <code>
[EMAIL PROTECTED] lib]$ ls
commons-collections-2.0.jar xdoclet-jmx-module-1.2b2.jar
commons-logging.jar xdoclet-libelis-module-1.2b2.jar
log4j.jar xdoclet-macromedia-module-1.2b2.jar
maven-xdoclet-plugin-1.2b2.jar xdoclet-mvcsoft-module-1.2b2.jar
xdoclet-1.2b2.jar xdoclet-mx4j-module-1.2b2.jar
xdoclet-apache-module-1.2b2.jar xdoclet-objectweb-module-1.2b2.jar
xdoclet-bea-module-1.2b2.jar xdoclet-orion-module-1.2b2.jar
xdoclet-borland-module-1.2b2.jar xdoclet-pramati-module-1.2b2.jar
xdoclet-caucho-module-1.2b2.jar xdoclet-solarmetric-module-1.2b2.jar
xdoclet-ejb-module-1.2b2.jar xdoclet-sybase-module-1.2b2.jar
xdoclet-exolab-module-1.2b2.jar xdoclet-tjdo-module-1.2b2.jar
xdoclet-hibernate-module-1.2b2.jar xdoclet-web-module-1.2b2.jar
xdoclet-hp-module-1.2b2.jar xdoclet-webwork-module-1.2b2.jar
xdoclet-ibm-module-1.2b2.jar xdoclet-xdoclet-module-1.2b2.jar
xdoclet-java-module-1.2b2.jar xdoclet-xjavadoc-1.2b2.jar
xdoclet-jboss-module-1.2b2.jar xdoclet-xjavadoc-uc-1.2b2.jar
xdoclet-jdo-module-1.2b2.jar
[EMAIL PROTECTED] lib]$ pwd
/home/gander/usr/opt/xdoclet/lib
[EMAIL PROTECTED] lib]$
</code>
Ok, here's the path setup for ant:
<code> <path id="xdoclet.path"> <pathelement location="${ant.home}/lib/ant.jar" /> <pathelement location="${ant.home}/lib/optional.jar" /> <pathelement location="${ant.home}/lib/xercesImpl.jar" /> <pathelement location="${ant.home}/lib/xml-apis.jar" /> <pathelement location="${jakarta.logging.jar}" /> <pathelement location="${ejb.jar}" /> <pathelement location="${log4j.jar}" /> <fileset dir="${xdoclet.home}/lib"> [****include all *.jar] <include name="*.jar"/> </fileset> </path> </code>
My base.path just for grins:
<code> <path id="base.path"> <path refid="xdoclet.path"/> [***includes the xdoclet.path] <pathelement location="${jboss.client}/jboss-j2ee.jar" /> <pathelement location="${jboss.client}/jnp-client.jar" /> <pathelement location="${jboss.client}/jbossmq-client.jar" /> <pathelement location="${jboss.client}/jbosssx-client.jar" /> <pathelement location="${jboss.client}/concurrent.jar" /> <pathelement location="${jboss.client}/jaas.jar" /> <pathelement location="${jboss.lib}/jboss-jmx.jar" /> <pathelement location= "${jboss.home}/server/${jboss.configuration}/lib/jbosssx.jar" /> <pathelement location= "${jboss.home}/server/${jboss.configuration}/lib/mail.jar" /> <pathelement location="${build.classes.dir}" />
</path> </code>
Ok, now for something completely target:
<code>
<!-- Target XDoclet
Execute XDoclet on the java source files for automatic
generation
of platform specific deployment descriptors.
-->
<target name="Generate XDoclet" depends="Prepare Build">
<taskdef name="ejbdoclet" classname="xdoclet.modules.ejb.EjbDocletTask">
<classpath refid="xdoclet.path"/>
</taskdef>
<ejbdoclet [****EJBDOCLETTASK WORKS***] destdir="${build.generate.dir}" excludedtags="@version,@author" ejbspec="2.0" mergedir="${src.etc.dir}/xdoclet" force="${xdoclet.force}" >
<fileset dir="${src.dir}"> <include name="edu/**/*.java"/> </fileset>
<!--<deploymentdescriptor destdir="${build.dir}/META-INF"/> -->
<jboss version="${jboss.version}" xmlencoding="UTF-8" typemapping="${type.mapping}" datasource="${datasource.name}" destdir="${build.dir}/META-INF" validateXml="false" /> </ejbdoclet>
<taskdef [*****WEBDOCLETTASK DOES NOT WORK] name="webdoclet" classname="xdoclet.modules.web.WebDocletTask" classpathref="xdoclet.path" /> [***Straight from the examples build.xml]
<webdoclet destdir="${build.dir}" mergedir="parent-fake-to-debug" excludedtags="@version,@author,@todo" force="${xdoclet.force}" verbose="false" > [***Straight from examples]
<fileset dir="${src.servlet.dir}"> <include name="**/*.java"/> </fileset> [***Straight from examples]
<deploymentdescriptor destdir="${build.dir}/WEB-INF"/>
<jbosswebxml destdir="${build.dir}/WEB-INF" />
<jsptaglib destdir="${build.dir}/WEB-INF/tlds" uri="cms-taglib" shortName="shortname" /> </webdoclet> <echo>Completed successfully!</echo> </target> </code>
And if that wasn't fascinating enough. . .the result:
<code>
Make sure the jar file containing the webdoclet class is on the classpath specified in the <taskdef> that defined {2}. These classes are
needed in order to generate correct output.
at xdoclet.DocletTask.checkClass(DocletTask.java:501)
at xdoclet.modules.web.WebDocletTask.validateOptions(WebDocletTask.java:22)
[******I find it very interesting that it is running what it can't find
: b]
at xjavadoc.ant.XJavadocTask.execute(XJavadocTask.java:53)
at
org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:193)
at org.apache.tools.ant.Task.perform(Task.java:341)
at org.apache.tools.ant.Target.execute(Target.java:309)
at org.apache.tools.ant.Target.performTasks(Target.java:336)
at org.apache.tools.ant.Project.executeTarget(Project.java:1339)
at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:397)
at org.apache.tools.ant.Task.perform(Task.java:341)
at org.apache.tools.ant.Target.execute(Target.java:309)
at org.apache.tools.ant.Target.performTasks(Target.java:336)
at org.apache.tools.ant.Project.executeTarget(Project.java:1339)
at
org.apache.tools.ant.Project.executeTargets(Project.java:1255)
at
com.intellij.rt.ant.execution.AntMain.runBuild(AntMain.java:493)
at com.intellij.rt.ant.execution.AntMain.start(AntMain.java:166)
at com.intellij.rt.ant.execution.AntMain.main(AntMain.java:191)
/home/gander/work/IdeaProjects/Cox/CoxPortal/cms/build.xml:270: Unexpected error
at xjavadoc.ant.XJavadocTask.execute(XJavadocTask.java:82)
at
org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:193)
at org.apache.tools.ant.Task.perform(Task.java:341)
at org.apache.tools.ant.Target.execute(Target.java:309)
at org.apache.tools.ant.Target.performTasks(Target.java:336)
at org.apache.tools.ant.Project.executeTarget(Project.java:1339)
at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:397)
at org.apache.tools.ant.Task.perform(Task.java:341)
at org.apache.tools.ant.Target.execute(Target.java:309)
at org.apache.tools.ant.Target.performTasks(Target.java:336)
at org.apache.tools.ant.Project.executeTarget(Project.java:1339)
at
org.apache.tools.ant.Project.executeTargets(Project.java:1255)
at
com.intellij.rt.ant.execution.AntMain.runBuild(AntMain.java:493)
at com.intellij.rt.ant.execution.AntMain.start(AntMain.java:166)
at com.intellij.rt.ant.execution.AntMain.main(AntMain.java:191)
Caused by: Make sure the jar file containing the webdoclet class is on the classpath specified in the <taskdef> that defined {2}. These classes
are needed in order to generate correct output.
at xdoclet.DocletTask.checkClass(DocletTask.java:501)
at
xdoclet.modules.web.WebDocletTask.validateOptions(WebDocletTask.java:22)
at xjavadoc.ant.XJavadocTask.execute(XJavadocTask.java:53)
... 14 more
--- Nested Exception ---
Make sure the jar file containing the webdoclet class is on the classpath specified in the <taskdef> that defined {2}. These classes are
needed in order to generate correct output. at xdoclet.DocletTask.checkClass(DocletTask.java:501) at xdoclet.modules.web.WebDocletTask.validateOptions(WebDocletTask.java:22) at xjavadoc.ant.XJavadocTask.execute(XJavadocTask.java:53) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:193) at org.apache.tools.ant.Task.perform(Task.java:341) at org.apache.tools.ant.Target.execute(Target.java:309) at org.apache.tools.ant.Target.performTasks(Target.java:336) at org.apache.tools.ant.Project.executeTarget(Project.java:1339) at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:397) at org.apache.tools.ant.Task.perform(Task.java:341) at org.apache.tools.ant.Target.execute(Target.java:309) at org.apache.tools.ant.Target.performTasks(Target.java:336) at org.apache.tools.ant.Project.executeTarget(Project.java:1339) at org.apache.tools.ant.Project.executeTargets(Project.java:1255) at com.intellij.rt.ant.execution.AntMain.runBuild(AntMain.java:493) at com.intellij.rt.ant.execution.AntMain.start(AntMain.java:166) at com.intellij.rt.ant.execution.AntMain.main(AntMain.java:191) </code>
Note: I am just using xdoclet to generate my jboss specific EJB xml files. IDEA does a nice job with the ejb-jar.xml and pretty much leave that alone.
Ok, that's the info. My sob story is that we were hoping to make a MAJOR milestone today and this is holding me up. . .I am unbelievably frustrated and am not above begging. I PRAY I've got everything in here
of value, if not. . .let me know and I'll try to shore up the information.
Thanks for saving lives. . .in advance, ; )
Gerald
P.S. No, I'm really not going to kill anybody or myself, well, not intentionally. . .if it can be helped..
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
