I'm running XDoclet and whenever I "make" my build.xml file using JBuilder 7,
XDoclet always returns to me this error.This error started to bug me when I
added this field ( @ejb.ejb-ref ejb-name="TenderConfigEJB" view-type="local" )
in my session bean(Session Facade Implementation).I want to generate this set
of tags:
<ejb-local-ref >
<ejb-ref-name></ejb-ref-name>
<ejb-ref-type></ejb-ref-type>
<local-home></local-home>
<local></local>
<ejb-link></ejb-link>
</ejb-local-ref>
It seems XDoclet cannot recognize TenderConfigEJB.By the way TenderConfigEJB is
an Entity Bean.
The error log:
[ejbdoclet] Running <deploymentDescriptor/>
[ejbdoclet] Generating EJB deployment descriptor.
[ejbdoclet] Running XDoclet failed.
[ejbdoclet] <<No such EJB defined: TenderConfigEJB>>
[ejbdoclet] 1 error
[ejbdoclet] javadoc: In doclet class xdoclet.DocletTask$DocletMain, method
start has thrown an exception java.lang.reflect.InvocationTargetException
Any Ideas?
build.xml
_________________________
<?xml version="1.0" encoding="UTF-8"?>
<project name="XDoclet" default="ejbdoclet">
<property file="build.properties"/>
<target name="init">
<property name="dir" value="G:\JAVA Tools"/>
<property name="lib.dir" value="lib"/>
<!-- library/jar path -->
<property name="xdoclet.jar.path" value="${dir}\XDoclet\lib\xdoclet.
jar"/>
<property name="log4j.jar.path" value="${dir}\XDoclet\samples\lib\log4j.
jar"/>
<property name="ant.jar.path" value="${dir}\ANT\lib\ant.jar"/>
<property name="src.dir" value="src"/>
<property name="generated.src.dir" value="XDoclet/gen-src-code"/>
<property name="web.dir" value="${src.dir}/web"/>
<property name="generated.java.dir" value="${generated.src.dir}/java"/>
<property name="config.dir" value="config"/>
<property name="build.dir" value="XDoclet/build"/>
<property name="dist.dir" value="XDoclet/dist"/>
<property name="build.compiler" value="modern"/>
<path id="project.class.path">
<fileset dir="${lib.dir}">
<include name="**/*.jar"/>
</fileset>
<!--
<fileset dir ="${basedir}/classes">
<include name="**/*.class"/>
</fileset>
-->
<!-- append the external classpath lastly -->
<pathelement path="${java.class.path};${log4j.jar.path}"/>
</path>
</target>
<!-- Prepare -->
<target name="prepare" depends="init">
<mkdir dir="${build.dir}"/>
<mkdir dir="${build.dir}/ejb"/>
<mkdir dir="${build.dir}/ejb/META-INF"/>
<mkdir dir="${build.dir}/web"/>
<mkdir dir="${build.dir}/web/WEB-INF"/>
<mkdir dir="${build.dir}/web/WEB-INF/tlds"/>
<mkdir dir="${build.dir}/web/WEB-INF/classes"/>
<mkdir dir="${build.dir}/j2ee"/>
<mkdir dir="${build.dir}/j2ee/META-INF"/>
<mkdir dir="${build.dir}/jmx"/>
<mkdir dir="${dist.dir}"/>
<mkdir dir="${generated.src.dir}"/>
<mkdir dir="${generated.java.dir}"/>
<echo message="XDoclet Path = ${xdoclet.jar.path}"/>
<echo message="Log4J Path = ${log4j.jar.path}"/>
<echo message="Ant Path = ${ant.jar.path}"/>
<echo message="ClassPath = ${java.class.path}"/>
<property name="cp" refid="project.class.path"/>
<echo message="CLASSPATH/REF ID:${cp}"/>
<echo message="base dir = ${basedir}/${src.dir}"/>
</target>
<target name="delete" >
<echo message = "Deleting directories"/>
<delete dir="${build.dir}"/>
<delete dir="${build.dir}/ejb"/>
<delete dir="${build.dir}/ejb/META-INF"/>
<delete dir="${build.dir}/web"/>
<delete dir="${build.dir}/web/WEB-INF"/>
<delete dir="${build.dir}/web/WEB-INF/tlds"/>
<delete dir="${build.dir}/web/WEB-INF/classes"/>
<delete dir="${build.dir}/j2ee"/>
<delete dir="${build.dir}/j2ee/META-INF"/>
<delete dir="${build.dir}/jmx"/>
<delete dir="${dist.dir}"/>
<delete dir="${generated.src.dir}"/>
<delete dir="${generated.java.dir}"/>
</target>
<!-- Run EJBDoclet -->
<target name="ejbdoclet" depends="prepare">
<taskdef name="ejbdoclet"
classname="xdoclet.ejb.EjbDocletTask"
classpath="${java.class.path};${log4j.jar.path};${ant.jar.path};
${xdoclet.jar.path} "/>
<ejbdoclet
sourcepath="${src.dir}"
destdir="${generated.java.dir}"
classpathref="project.class.path"
excludedtags="@version,@author"
ejbspec="2.0"
>
<fileset dir="${src.dir}">
<include name="**/*EJB.java"/>
</fileset>
<!-- <dataobject/>
<localinterface/>
<localhomeinterface/> -->
<remoteinterface/>
<homeinterface/>
<entitypk/>
<entitycmp/>
<deploymentdescriptor destdir="${build.dir}/ejb/META-INF"
validatexml="true"/>
<jboss version="3.0" xmlencoding="UTF-8" validatexml="true"
typemapping="Hypersonic
SQL" datasource="java:/DefaultDS" destdir="${build.
dir}/ejb/META-INF"/>
<!--
<weblogic xmlencoding="UTF-8" destdir="${build.dir}/ejb/META-INF"
validatexml="true"/>
<webSphere destdir="${build.dir}/ejb/META-INF" />
<orion/>
<apachesoap destdir="${build.dir}/web"/>
-->
<!--
Have struts form objects generated based on entity beans'
data objects. Will require struts.jar to compile.
<strutsform />
-->
</ejbdoclet>
</target>
</project>
TerminalSessionFacadeEJB
___________________________________
/**
* @ejb:bean type = "Stateless"
* name = "TerminalSessionFacadeEJB"
* jndi-name = "com.uniserv.comn.controller.ejb.entity.tenderconfig.
TerminalSessionFaceEJB"
* display-name = "Terminal Session Facade EJB"
* @ejb.util
* generate="physical"
*
* @ejb.ejb-ref view-type="local"
* ejb-name="TenderConfigEJB"
*
*/
public class TerminalSessionFacadeEJB implements SessionBean {
private SessionContext ctx = null;
private ServiceLocator serviceLocator = null;
TenderConfigEJB
________________________________________
/**
* @ejb.bean
* name ="TenderConfigEJB"
* type="CMP"
* cmp-version="2.x"
* schema="TenderConfigEJB"
* view-type="local"
*
*/
import javax.ejb.*;
import com.uniserv.comn.model.*;
public abstract class TenderConfigEJB implements EntityBean{
private EntityContext ctx = null;
/**
* @ejb.pk
*
*/
public abstract int getTndrID();
public abstract void setTndrID(int iTndrID);
/**
* @ejb.pk
*
*/
public abstract String getTndrCfgName();
************************************
Paulo A. Bengero
Application Systems Engineer
Team ORION
UniServ Systems International Incorporated
* 7th Floor, Fujitsu House Bldg.
A. Arnaiz Ave. (Pasay Road)
Legaspi Village, Makati City 1229
Philippines
************************************
------------------------------------------------------------------------
FPI Gateway Scanner scanned email-body and no virus found
------------------------------------------------------------------------