Hello,
I am trying xDoclet for the first time using a simple Hello Bean. Below are snippets from my build script.
<path id="xdoclet.lib.path">
<fileset dir="${lib.dir}">
<include name="*.jar"/>
</fileset>
<fileset dir="${compile.lib.dir}">
<include name="*.jar"/>
</fileset>
<fileset dir="${lib.dir}">
<include name="*.jar"/>
</fileset>
<fileset dir="${compile.lib.dir}">
<include name="*.jar"/>
</fileset>
<fileset dir="${xdoclet.lib.dir}">
<include name="*.jar"/>
</fileset>
<include name="*.jar"/>
</fileset>
<fileset dir="${jboss.lib.dir}">
<include name="*.jar"/>
</fileset>
<include name="*.jar"/>
</fileset>
<fileset dir="${xerces.lib.dir}">
<include name="*.jar"/>
</fileset>
</path>
<property name="xdoclet.cp" refid="xdoclet.lib.path"/>
<include name="*.jar"/>
</fileset>
</path>
<property name="xdoclet.cp" refid="xdoclet.lib.path"/>
...,.
<!-- =================================
target: prepare
================================= -->
<target name="prepare" description="--> description Makes all of the necessary directories">
<echo>The xdoclet cp is ${xdoclet.cp}</echo>
<mkdir dir="${build.dir}" />
<mkdir dir="${classes.dir}" />
<mkdir dir="${distribution.dir}" />
<mkdir dir="${gen.source.dir}" />
<taskdef name="ejbdoclet"
classname="xdoclet.modules.ejb.EjbDocletTask"
classpathref="xdoclet.lib.path" />
</target>
target: prepare
================================= -->
<target name="prepare" description="--> description Makes all of the necessary directories">
<echo>The xdoclet cp is ${xdoclet.cp}</echo>
<mkdir dir="${build.dir}" />
<mkdir dir="${classes.dir}" />
<mkdir dir="${distribution.dir}" />
<mkdir dir="${gen.source.dir}" />
<taskdef name="ejbdoclet"
classname="xdoclet.modules.ejb.EjbDocletTask"
classpathref="xdoclet.lib.path" />
</target>
....
<target name="run-ejbdoclet" depends="prepare" description="Generate EJB artifacts">
<mkdir dir="${gen.source.dir}" />
<ejbdoclet destdir="${gen.source.dir}" ejbspec="2.1" verbose="true">
<fileset dir="${source.dir}">
<include name="**/*Bean.java"/>
</fileset>
<mkdir dir="${gen.source.dir}" />
<ejbdoclet destdir="${gen.source.dir}" ejbspec="2.1" verbose="true">
<fileset dir="${source.dir}">
<include name="**/*Bean.java"/>
</fileset>
<remoteinterface />
<homeinterface />
<homeinterface />
<deploymentdescriptor destdir="${gen.source.dir}"/>
<jboss version="4.0" destdir="${gen.source.dir}"/>
</ejbdoclet>
</target>
<jboss version="4.0" destdir="${gen.source.dir}"/>
</ejbdoclet>
</target>
when the run-ejbdoclet target is run the build fails with the following stack trace
run-ejbdoclet:
[ejbdoclet] XDoclet classpath missing J2EE classes
[ejbdoclet] at xdoclet.modules.ejb.EjbDocletTask.validateOptions(EjbDocletTask.java:86)
[ejbdoclet] at xjavadoc.ant.XJavadocTask.execute(XJavadocTask.java:89)
[ejbdoclet] at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:269)
[ejbdoclet] at org.apache.tools.ant.Task.perform(Task.java:364)
[ejbdoclet] at org.apache.tools.ant.Target.execute(Target.java:301)
[ejbdoclet] at org.apache.tools.ant.Target.performTasks(Target.java:328)
[ejbdoclet] at org.apache.tools.ant.Project.executeTarget(Project.java:1215)
[ejbdoclet] at org.apache.tools.ant.Project.executeTargets(Project.java:1063)
[ejbdoclet] at org.apache.tools.ant.Main.runBuild(Main.java:632)
[ejbdoclet] at org.apache.tools.ant.Main.startAnt(Main.java:183)
[ejbdoclet] at org.apache.tools.ant.launch.Launcher.run(Launcher.java:197)
[ejbdoclet] at org.apache.tools.ant.launch.Launcher.main(Launcher.java:56)
[ejbdoclet] Caused by: Make sure the jar file containing the javax.ejb.EntityBean class is on the classpath specified in the <taskdef> that defined ejbdoclet. These classes are needed in order to generate correct output.
[ejbdoclet] at xdoclet.DocletTask.checkClass(DocletTask.java:513)
[ejbdoclet] at xdoclet.modules.ejb.EjbDocletTask.validateOptions(EjbDocletTask.java:83)
[ejbdoclet] ... 11 more
[ejbdoclet] --- Nested Exception ---
[ejbdoclet] Make sure the jar file containing the javax.ejb.EntityBean class is on the classpath specified in the <taskdef> that defined ejbdoclet. These classes are needed in order to generate correct output.
[ejbdoclet] at xdoclet.DocletTask.checkClass(DocletTask.java:513)
[ejbdoclet] at xdoclet.modules.ejb.EjbDocletTask.validateOptions(EjbDocletTask.java:83)
[ejbdoclet] at xjavadoc.ant.XJavadocTask.execute(XJavadocTask.java:89)
[ejbdoclet] at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:269)
[ejbdoclet] at org.apache.tools.ant.Task.perform(Task.java:364)
[ejbdoclet] at org.apache.tools.ant.Target.execute(Target.java:301)
[ejbdoclet] at org.apache.tools.ant.Target.performTasks(Target.java:328)
[ejbdoclet] at org.apache.tools.ant.Project.executeTarget(Project.java:1215)
[ejbdoclet] at org.apache.tools.ant.Project.executeTargets(Project.java:1063)
[ejbdoclet] at org.apache.tools.ant.Main.runBuild(Main.java:632)
[ejbdoclet] at org.apache.tools.ant.Main.startAnt(Main.java:183)
[ejbdoclet] at org.apache.tools.ant.launch.Launcher.run(Launcher.java:197)
[ejbdoclet] at org.apache.tools.ant.launch.Launcher.main(Launcher.java:56)
[ejbdoclet] XDoclet classpath missing J2EE classes
[ejbdoclet] at xdoclet.modules.ejb.EjbDocletTask.validateOptions(EjbDocletTask.java:86)
[ejbdoclet] at xjavadoc.ant.XJavadocTask.execute(XJavadocTask.java:89)
[ejbdoclet] at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:269)
[ejbdoclet] at org.apache.tools.ant.Task.perform(Task.java:364)
[ejbdoclet] at org.apache.tools.ant.Target.execute(Target.java:301)
[ejbdoclet] at org.apache.tools.ant.Target.performTasks(Target.java:328)
[ejbdoclet] at org.apache.tools.ant.Project.executeTarget(Project.java:1215)
[ejbdoclet] at org.apache.tools.ant.Project.executeTargets(Project.java:1063)
[ejbdoclet] at org.apache.tools.ant.Main.runBuild(Main.java:632)
[ejbdoclet] at org.apache.tools.ant.Main.startAnt(Main.java:183)
[ejbdoclet] at org.apache.tools.ant.launch.Launcher.run(Launcher.java:197)
[ejbdoclet] at org.apache.tools.ant.launch.Launcher.main(Launcher.java:56)
[ejbdoclet] Caused by: Make sure the jar file containing the javax.ejb.EntityBean class is on the classpath specified in the <taskdef> that defined ejbdoclet. These classes are needed in order to generate correct output.
[ejbdoclet] at xdoclet.DocletTask.checkClass(DocletTask.java:513)
[ejbdoclet] at xdoclet.modules.ejb.EjbDocletTask.validateOptions(EjbDocletTask.java:83)
[ejbdoclet] ... 11 more
[ejbdoclet] --- Nested Exception ---
[ejbdoclet] Make sure the jar file containing the javax.ejb.EntityBean class is on the classpath specified in the <taskdef> that defined ejbdoclet. These classes are needed in order to generate correct output.
[ejbdoclet] at xdoclet.DocletTask.checkClass(DocletTask.java:513)
[ejbdoclet] at xdoclet.modules.ejb.EjbDocletTask.validateOptions(EjbDocletTask.java:83)
[ejbdoclet] at xjavadoc.ant.XJavadocTask.execute(XJavadocTask.java:89)
[ejbdoclet] at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:269)
[ejbdoclet] at org.apache.tools.ant.Task.perform(Task.java:364)
[ejbdoclet] at org.apache.tools.ant.Target.execute(Target.java:301)
[ejbdoclet] at org.apache.tools.ant.Target.performTasks(Target.java:328)
[ejbdoclet] at org.apache.tools.ant.Project.executeTarget(Project.java:1215)
[ejbdoclet] at org.apache.tools.ant.Project.executeTargets(Project.java:1063)
[ejbdoclet] at org.apache.tools.ant.Main.runBuild(Main.java:632)
[ejbdoclet] at org.apache.tools.ant.Main.startAnt(Main.java:183)
[ejbdoclet] at org.apache.tools.ant.launch.Launcher.run(Launcher.java:197)
[ejbdoclet] at org.apache.tools.ant.launch.Launcher.main(Launcher.java:56)
however I am outputting the classpath and the j2ee jar with the EntityBean class is there. The weird thing is if I run the samples build script which does basically the same thing, succeeds.
I am really scratching my head on this one I know it's got to be something really stupid
any help would be great
Env:
Windows XP Pro
Eclipse 3.1
Ant 1.6.x
JBoss 4.0.3
XDoclet 1.2.3
Sorry for the big post.
Garrett Deacon704-779-5229
"Character is the architecture of the being."
-louise Nevelson
"Man is not on the earth solely for his own hapiness.
He is there to realize great things for humanity.
-Vincen Van Gogh
"If history repeats itself, and the unexpected always happens, how incapable must Man be of learning from experience!"
-George Bernard Shaw
------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________ xdoclet-user mailing list xdoclet-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/xdoclet-user