<taskdef name="xdoclet" classname="xdoclet.modules.ejb.EjbDocletTask"
<xdoclet destdir="${build.gen-src}"
<fileset dir="${source.java}">
<include name="org/jboss/management/mejb/*Bean.java"/>
<exclude name="org/jboss/management/mejb/*MBean.java"/>
</fileset>
<packageSubstitution packages="ejb" substituteWith="interfaces"/>
<remoteinterface/>
<!--AS not clear why now a home interface is generated <homeinterface/> -->
<session/>
<deploymentdescriptor xmlencoding="UTF-8" destdir="${build.gen-src}/META-INF"/>
<jboss xmlencoding="UTF-8" destdir="${build.gen-src}/META-INF"/>
</xdoclet>
The classpath attribute in the <taskdef> element does include the jboss-jmx.jar which contains the javax.management.ObjectName class. The sourcefile org.jboss.management.mejb.ManagementBean does contain an import statement "import javax.management.ObjectName;". The only two odd things are that the ManagmentBean javadoc specifies its bean name as "MEJB", so that it is generating files "MEJB.java" and "MEJBSession.java" which is what the author wanted. The other is that in this particular Ant task there is a previous <taskdef name="xdoclet" ... >, but that appears to be functioning properly, and the second one appears to begin executing the EjbDocletTask correctly. Both have the same classpath. Please let me know what I might be doing wrong or need to adjust for the new XDoclet. Thank you. Fred. Here is the exception:
[xdoclet] Running <remoteinterface/>
[xdoclet] Generating Remote interface for 'org.jboss.management.mejb.ManagementBean'.
[xdoclet] (TemplateEngine.invokeMethod 483 ) Invoking method failed: xdoclet.tagshandler.ClassTagsHandler.importedList, line=6 of
template file: jar:file:D:\Multideck\JBoss3.1\jboss-all\thirdparty\xdoclet\xdoclet\lib\xdoclet-ejb-module.jar!/xdoclet/modules/ejb/intf/reso
urces/remote.xdt
[xdoclet] java.lang.reflect.InvocationTargetException:
[xdoclet] java.lang.NoClassDefFoundError: javax/management/ObjectName
[xdoclet] at java.lang.Class.getMethods0(Native Method)
[xdoclet] at java.lang.Class.getDeclaredMethods(Class.java:1034)
[xdoclet] at xjavadoc.BinaryClass.setMethods(BinaryClass.java:170)
[xdoclet] at xjavadoc.BinaryClass.complete(BinaryClass.java:119)
[xdoclet] at xjavadoc.XJavaDoc.getXClass(XJavaDoc.java:404)
[xdoclet] at xjavadoc.SourceClass.qualify(SourceClass.java:297)
[xdoclet] at xjavadoc.AbstractClass.getImportedClasses(AbstractClass.java:308)
[xdoclet] at xdoclet.tagshandler.ClassTagsHandler.importedList(ClassTagsHandler.java:671)
[xdoclet] at java.lang.reflect.Method.invoke(Native Method)
[xdoclet] at xdoclet.template.TemplateEngine.invoke(TemplateEngine.java:577)
[xdoclet] at xdoclet.template.TemplateEngine.invokeMethod(TemplateEngine.java:476)
[xdoclet] at xdoclet.template.TemplateEngine.invokeContentMethod(TemplateEngine.java:556)
[xdoclet] at xdoclet.template.TemplateEngine.handleTag(TemplateEngine.java:428)
[xdoclet] at xdoclet.template.TemplateEngine.generate(TemplateEngine.java:324)
[xdoclet] at xdoclet.template.TemplateEngine.start(TemplateEngine.java:373)
[xdoclet] at xdoclet.TemplateSubTask.startEngine(TemplateSubTask.java:777)
[xdoclet] at xdoclet.TemplateSubTask.generateForClass(TemplateSubTask.java:719)
[xdoclet] at xdoclet.TemplateSubTask.startProcessPerClass(TemplateSubTask.java:611)
[xdoclet] at xdoclet.TemplateSubTask.startProcess(TemplateSubTask.java:551)
[xdoclet] at xdoclet.TemplateSubTask.execute(TemplateSubTask.java:489)
[xdoclet] at xdoclet.XDocletMain.start(XDocletMain.java:46)
[xdoclet] at xdoclet.DocletTask.start(DocletTask.java:347)
[xdoclet] at xjavadoc.ant.XJavadocTask.execute(XJavadocTask.java:66)
[xdoclet] at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java)
[xdoclet] at org.apache.tools.ant.Task.perform(Task.java)
[xdoclet] at org.apache.tools.ant.Target.execute(Target.java)
[xdoclet] at org.apache.tools.ant.Target.performTasks(Target.java)
[xdoclet] at org.apache.tools.ant.Project.executeTarget(Project.java)
[xdoclet] at org.apache.tools.ant.Project.executeTargets(Project.java)
[xdoclet] at org.apache.tools.ant.Main.runBuild(Main.java)
[xdoclet] at org.apache.tools.ant.Main.start(Main.java)
[xdoclet] at org.apache.tools.ant.Main.main(Main.java)
[xdoclet] (XDocletMain.start 51 ) Running XDoclet failed.
[xdoclet] (XDocletMain.start 52 ) <<Running XDoclet failed.>>
[xdoclet] xdoclet.template.TemplateException: Invoking method in class xdoclet.tagshandler.ClassTagsHandler failed: importedList, line=6 o
f template file: jar:file:D:\Multideck\JBoss3.1\jboss-all\thirdparty\xdoclet\xdoclet\lib\xdoclet-ejb-module.jar!/xdoclet/modules/ejb/intf/re
sources/remote.xdt, exception: null
[xdoclet] at xdoclet.template.TemplateEngine.invokeMethod(TemplateEngine.java:484)
[xdoclet] at xdoclet.template.TemplateEngine.invokeContentMethod(TemplateEngine.java:556)
[xdoclet] at xdoclet.template.TemplateEngine.handleTag(TemplateEngine.java:428)
[xdoclet] at xdoclet.template.TemplateEngine.generate(TemplateEngine.java:324)
[xdoclet] at xdoclet.template.TemplateEngine.start(TemplateEngine.java:373)
[xdoclet] at xdoclet.TemplateSubTask.startEngine(TemplateSubTask.java:777)
[xdoclet] at xdoclet.TemplateSubTask.generateForClass(TemplateSubTask.java:719)
[xdoclet] at xdoclet.TemplateSubTask.startProcessPerClass(TemplateSubTask.java:611)
[xdoclet] at xdoclet.TemplateSubTask.startProcess(TemplateSubTask.java:551)
[xdoclet] at xdoclet.TemplateSubTask.execute(TemplateSubTask.java:489)
[xdoclet] at xdoclet.XDocletMain.start(XDocletMain.java:46)
[xdoclet] at xdoclet.DocletTask.start(DocletTask.java:347)
[xdoclet] at xjavadoc.ant.XJavadocTask.execute(XJavadocTask.java:66)
[xdoclet] at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java)
[xdoclet] at org.apache.tools.ant.Task.perform(Task.java)
[xdoclet] at org.apache.tools.ant.Target.execute(Target.java)
[xdoclet] at org.apache.tools.ant.Target.performTasks(Target.java)
[xdoclet] at org.apache.tools.ant.Project.executeTarget(Project.java)
[xdoclet] at org.apache.tools.ant.Project.executeTargets(Project.java)
[xdoclet] at org.apache.tools.ant.Main.runBuild(Main.java)
[xdoclet] at org.apache.tools.ant.Main.start(Main.java)
[xdoclet] at org.apache.tools.ant.Main.main(Main.java)