You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@maven.apache.org by sh...@spymac.com on 2004/06/25 04:38:03 UTC
How to get xdoclet generating necessary files thru maven?
I make use of the example in wiki
(http://wiki.codehaus.org/maven/CreatingJ2eeApplications) to create my j2ee project;
yet encounter a probelm when integrate xdoclet with maven.
After following up the instruction in maven plug-in page
(http://xdoclet.sourceforge.net/xdoclet/maven-plugin.html),
I setup maven.xml and project.properties along with project.xml. It looks as
follow. However, it seems no use to get xdoclet generating
necessary files (such as remote, home interface). Additionaly, I also defined
necessary depandencies in the root project.xml. Where did I do it wrong?
BTW, there no error report ,when compiling, for the ejb source I use was
successful compiled and run smoothly only through xdoclet.
I appreciate any suggestions.
Sincerely,
Arsene
==========maven.xml==========BEG
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns:maven="jelly:maven" xmlns:j="jelly:core">
<preGoal name="java:compile">
<attainGoal name="xdoclet:ejbdoclet"/>
</preGoal>
<!-- Generate required Xdoclet EjbDoclet resources for this project. -->
<goal name="xdoclet:ejbdoclet">
<echo message="destDir -> ${maven.xdoclet.ejbdoclet.destDir}"/>
<echo message="srcDir -> ${maven.xdoclet.ejbdoclet.srcDir}"/>
<mkdir dir="${maven.xdoclet.ejbdoclet.destDir}"/>
<taskdef name="ejbdoclet" classname="xdoclet.modules.ejb.EjbDocletTask"
classpathref="maven.dependency.classpath"/>
<ejbdoclet destdir="${maven.xdoclet.ejbdoclet.destDir}"
excludedtags="@version,@author,@todo"
ejbspec="2.0" >
<fileset dir="${maven.xdoclet.ejbdoclet.srcDir}">
<include name="**/*Bean.java"/>
</fileset>
<session/>
<remoteinterface/>
<homeinterface/>
<deploymentdescriptor
destdir="${maven.xdoclet.ejbdoclet.destDir}/META-INF"
/>
<jboss
version="3.0"
destdir="${maven.xdoclet.ejbdoclet.destDir}/META-INF"
/>
</ejbdoclet>
<echo>delete unneeded objects</echo>
<delete>
<fileset dir="${maven.xdoclet.ejbdoclet.destDir}">
<include name="**/data/*.java"/>
<include name="**/interfaces/*.java"/>
</fileset>
</delete>
<path id="ejbdoclet.java.compile.src.set"
location="${maven.xdoclet.ejbdoclet.destDir}"/>
<maven:addPath id="maven.compile.src.set" refid="ejbdoclet.java.compile.src.set"/>
</goal>
</project>
==========maven.xml==========END
==========project.proerties==========BEG
maven.multiproject.type=ejb
#define xdoclet properties
maven.xdoclet.force=false
maven.xdoclet.ejbdoclet.srcDir=${basedir}/src/java
maven.xdoclet.ejbdoclet.destDir=${basedir}/target/xdoclet/ejbdoclet
maven.ejb.src=${maven.xdoclet.ejbdoclet.srcDir}
# plugin.properties
#ejbdoclet default properties
maven.xdoclet.ejbdoclet.destDir=${maven.build.dir}/xdoclet/ejbdoclet
maven.xdoclet.ejbdoclet.fileset.0=true
maven.xdoclet.ejbdoclet.fileset.0.include=**/*Bean.java
maven.xdoclet.ejbdoclet.deploymentdescriptor.0=true
maven.xdoclet.ejbdoclet.deploymentdescriptor.0.destDir=${maven.build.dir}/xdoclet/ejb/META-INF
maven.xdoclet.ejbdoclet.entitybmp.0=true
maven.xdoclet.ejbdoclet.entitycmp.0=true
maven.xdoclet.ejbdoclet.entitypk.0=true
maven.xdoclet.ejbdoclet.homeinterface.0=true
maven.xdoclet.ejbdoclet.localhomeinterface.0=true
maven.xdoclet.ejbdoclet.localinterface.0=true
maven.xdoclet.ejbdoclet.remoteinterface.0=true
maven.xdoclet.ejbdoclet.session.0=true
maven.xdoclet.ejbdoclet.utilobject.0=true
==========project.proerties==========END
==========Project.xml in root folder ==========BEG
<project>
<pomVersion>3</pomVersion>
<groupId>tw.idv.arsene.maven.sample</groupId>
<id>arsene-sample-project</id>
<name>arsene sample project</name>
<currentVersion>1.0</currentVersion>
<package>tw.idv.arsene.maven.sample</package>
<!-- ################################################################ -->
<!-- Project management section -->
<!-- ################################################################ -->
<!-- ################################################################ -->
<!-- Project dependency section -->
<!-- ################################################################ -->
<dependencies>
<dependency>
<groupId>commons-collections</groupId>
<artifactId>commons-collections</artifactId>
<version>2.1</version>
<url>http://jakarta.apache.org/commons</url>
</dependency>
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>1.0.3</version>
<url>http://jakarta.apache.org/commons</url>
</dependency>
<!-- XDoclet J2ee -->
<dependency>
<groupId>jboss</groupId>
<artifactId>jboss-j2ee</artifactId>
<version>3.2.1</version>
<url>http://www.jboss.org</url>
</dependency>
<!-- XDoclet -->
<dependency>
<groupId>xdoclet</groupId>
<artifactId>xjavadoc</artifactId>
<version>1.0.2</version>
<url>http://xdoclet.sourceforge.net</url>
</dependency>
<dependency>
<groupId>xdoclet</groupId>
<artifactId>xdoclet</artifactId>
<version>1.2</version>
<url>http://xdoclet.sourceforge.net</url>
</dependency>
<dependency>
<groupId>xdoclet</groupId>
<artifactId>xdoclet-xdoclet-module</artifactId>
<version>1.2</version>
<url>http://xdoclet.sourceforge.net</url>
</dependency>
<dependency>
<groupId>xdoclet</groupId>
<artifactId>xdoclet-ejb-module</artifactId>
<version>1.2</version>
<url>http://xdoclet.sourceforge.net</url>
</dependency>
<dependency>
<groupId>xdoclet</groupId>
<artifactId>xdoclet-jboss-module</artifactId>
<version>1.2b4</version>
<url>http://xdoclet.sourceforge.net</url>
</dependency>
<dependency>
<groupId>xdoclet</groupId>
<artifactId>xdoclet-jmx-module</artifactId>
<version>1.2</version>
<url>http://xdoclet.sourceforge.net</url>
</dependency>
</dependencies>
<!-- ################################################################ -->
<!-- Project build and reports section -->
<!-- ################################################################ -->
<build>
<sourceDirectory>
${basedir}/src/java
</sourceDirectory>
<unitTestSourceDirectory>
${basedir}/src/test
</unitTestSourceDirectory>
<unitTest>
<includes>
<include>**/Test*.java</include>
</includes>
<!--
<excludes>
<exclude>
**/*Test*All.java
</exclude>
</excludes>
-->
</unitTest>
</build>
</project>
==========project.xml in root folder ==========END
==========HelloBean.java ==========BEG
package tw.idv.arsene.maven.sample.ejb;
import javax.ejb.*;
/**
* @ejb:bean name="Hello"
* description="Sample to test xdoclet"
* jndi-name="ejb/Hello"
* type="Stateless"
*/
public class HelloBean extends BaseSessionBean {
/**
* @ejb:interface-method view-type="remote"
*/
public String speak(){
return "hello";
}
}
==========HelloBean.java ==========END
==========BaseSessionBean.java ==========BEG
package tw.idv.arsene.maven.sample.ejb;
import javax.ejb.*;
/**
* @ejb:bean
* name="BaseSession"
* type="Stateless"
* view-type="remote"
* jndi-name="ejb/BaseSession"
*/
public class BaseSessionBean implements SessionBean{
/**
* @ejb:create-method
*/
public void ejbCreate() throws CreateException{}
public void ejbRemove(){}
public void setSessionContext(SessionContext context){ }
public void ejbPassivate(){ }
public void ejbActivate(){}
}
==========BaseSessionBean.java ==========END
Cool Things Happen When Mac Users Meet! Join the community in Boston this July: www.macworldexpo.com
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org
RE: How to get xdoclet generating necessary files thru maven?
Posted by Chuck Daniels <cj...@yahoo.com>.
Why have you overridden the xdoclet:ejbdoclet goal in your maven.xml? Try
removing it from your maven.xml so that the goal by the same name in the
plugin can run.
> -----Original Message-----
> From: showit@spymac.com [mailto:showit@spymac.com]
> Sent: Friday, June 25, 2004 3:38 AM
> To: users@maven.apache.org
> Subject: How to get xdoclet generating necessary files thru maven?
>
>
> I make use of the example in wiki
> (http://wiki.codehaus.org/maven/CreatingJ2eeApplications) to
> create my j2ee project;
> yet encounter a probelm when integrate xdoclet with maven.
> After following up the instruction in maven plug-in page
> (http://xdoclet.sourceforge.net/xdoclet/maven-plugin.html),
> I setup maven.xml and project.properties along with project.xml.
> It looks as
> follow. However, it seems no use to get xdoclet generating
> necessary files (such as remote, home interface). Additionaly, I
> also defined
> necessary depandencies in the root project.xml. Where did I do it wrong?
> BTW, there no error report ,when compiling, for the ejb source I use was
> successful compiled and run smoothly only through xdoclet.
> I appreciate any suggestions.
> Sincerely,
> Arsene
>
>
>
> ==========maven.xml==========BEG
> <?xml version="1.0" encoding="UTF-8"?>
> <project xmlns:maven="jelly:maven" xmlns:j="jelly:core">
> <preGoal name="java:compile">
> <attainGoal name="xdoclet:ejbdoclet"/>
> </preGoal>
> <!-- Generate required Xdoclet EjbDoclet resources for this
> project. -->
> <goal name="xdoclet:ejbdoclet">
> <echo message="destDir ->
> ${maven.xdoclet.ejbdoclet.destDir}"/>
> <echo message="srcDir ->
> ${maven.xdoclet.ejbdoclet.srcDir}"/>
> <mkdir dir="${maven.xdoclet.ejbdoclet.destDir}"/>
> <taskdef name="ejbdoclet"
> classname="xdoclet.modules.ejb.EjbDocletTask"
> classpathref="maven.dependency.classpath"/>
> <ejbdoclet destdir="${maven.xdoclet.ejbdoclet.destDir}"
> excludedtags="@version,@author,@todo"
> ejbspec="2.0" >
> <fileset dir="${maven.xdoclet.ejbdoclet.srcDir}">
> <include name="**/*Bean.java"/>
> </fileset>
>
> <session/>
> <remoteinterface/>
> <homeinterface/>
>
> <deploymentdescriptor
>
> destdir="${maven.xdoclet.ejbdoclet.destDir}/META-INF"
> />
>
> <jboss
> version="3.0"
>
> destdir="${maven.xdoclet.ejbdoclet.destDir}/META-INF"
> />
> </ejbdoclet>
> <echo>delete unneeded objects</echo>
> <delete>
> <fileset dir="${maven.xdoclet.ejbdoclet.destDir}">
> <include name="**/data/*.java"/>
> <include name="**/interfaces/*.java"/>
> </fileset>
> </delete>
> <path id="ejbdoclet.java.compile.src.set"
> location="${maven.xdoclet.ejbdoclet.destDir}"/>
> <maven:addPath id="maven.compile.src.set"
> refid="ejbdoclet.java.compile.src.set"/>
> </goal>
> </project>
> ==========maven.xml==========END
> ==========project.proerties==========BEG
> maven.multiproject.type=ejb
>
> #define xdoclet properties
> maven.xdoclet.force=false
> maven.xdoclet.ejbdoclet.srcDir=${basedir}/src/java
> maven.xdoclet.ejbdoclet.destDir=${basedir}/target/xdoclet/ejbdoclet
>
>
> maven.ejb.src=${maven.xdoclet.ejbdoclet.srcDir}
>
> # plugin.properties
> #ejbdoclet default properties
> maven.xdoclet.ejbdoclet.destDir=${maven.build.dir}/xdoclet/ejbdoclet
>
> maven.xdoclet.ejbdoclet.fileset.0=true
> maven.xdoclet.ejbdoclet.fileset.0.include=**/*Bean.java
>
> maven.xdoclet.ejbdoclet.deploymentdescriptor.0=true
> maven.xdoclet.ejbdoclet.deploymentdescriptor.0.destDir=${maven.bui
> ld.dir}/xdoclet/ejb/META-INF
>
> maven.xdoclet.ejbdoclet.entitybmp.0=true
> maven.xdoclet.ejbdoclet.entitycmp.0=true
> maven.xdoclet.ejbdoclet.entitypk.0=true
> maven.xdoclet.ejbdoclet.homeinterface.0=true
> maven.xdoclet.ejbdoclet.localhomeinterface.0=true
> maven.xdoclet.ejbdoclet.localinterface.0=true
> maven.xdoclet.ejbdoclet.remoteinterface.0=true
> maven.xdoclet.ejbdoclet.session.0=true
> maven.xdoclet.ejbdoclet.utilobject.0=true
> ==========project.proerties==========END
>
> ==========Project.xml in root folder ==========BEG
> <project>
> <pomVersion>3</pomVersion>
> <groupId>tw.idv.arsene.maven.sample</groupId>
> <id>arsene-sample-project</id>
> <name>arsene sample project</name>
> <currentVersion>1.0</currentVersion>
> <package>tw.idv.arsene.maven.sample</package>
> <!--
> ################################################################ -->
> <!-- Project management section
> -->
> <!--
> ################################################################ -->
>
>
>
> <!--
> ################################################################ -->
> <!-- Project dependency section
> -->
> <!--
> ################################################################ -->
>
> <dependencies>
> <dependency>
> <groupId>commons-collections</groupId>
> <artifactId>commons-collections</artifactId>
> <version>2.1</version>
> <url>http://jakarta.apache.org/commons</url>
> </dependency>
>
> <dependency>
> <groupId>commons-logging</groupId>
> <artifactId>commons-logging</artifactId>
> <version>1.0.3</version>
> <url>http://jakarta.apache.org/commons</url>
> </dependency>
>
> <!-- XDoclet J2ee -->
> <dependency>
> <groupId>jboss</groupId>
> <artifactId>jboss-j2ee</artifactId>
> <version>3.2.1</version>
> <url>http://www.jboss.org</url>
> </dependency>
>
> <!-- XDoclet -->
> <dependency>
> <groupId>xdoclet</groupId>
> <artifactId>xjavadoc</artifactId>
> <version>1.0.2</version>
> <url>http://xdoclet.sourceforge.net</url>
> </dependency>
>
> <dependency>
> <groupId>xdoclet</groupId>
> <artifactId>xdoclet</artifactId>
> <version>1.2</version>
> <url>http://xdoclet.sourceforge.net</url>
> </dependency>
>
> <dependency>
> <groupId>xdoclet</groupId>
> <artifactId>xdoclet-xdoclet-module</artifactId>
> <version>1.2</version>
> <url>http://xdoclet.sourceforge.net</url>
> </dependency>
>
> <dependency>
> <groupId>xdoclet</groupId>
> <artifactId>xdoclet-ejb-module</artifactId>
> <version>1.2</version>
> <url>http://xdoclet.sourceforge.net</url>
> </dependency>
>
> <dependency>
> <groupId>xdoclet</groupId>
> <artifactId>xdoclet-jboss-module</artifactId>
> <version>1.2b4</version>
> <url>http://xdoclet.sourceforge.net</url>
> </dependency>
>
> <dependency>
> <groupId>xdoclet</groupId>
> <artifactId>xdoclet-jmx-module</artifactId>
> <version>1.2</version>
> <url>http://xdoclet.sourceforge.net</url>
> </dependency>
> </dependencies>
> <!--
> ################################################################ -->
> <!-- Project build and reports section
> -->
> <!--
> ################################################################ -->
> <build>
> <sourceDirectory>
> ${basedir}/src/java
> </sourceDirectory>
> <unitTestSourceDirectory>
> ${basedir}/src/test
> </unitTestSourceDirectory>
> <unitTest>
> <includes>
> <include>**/Test*.java</include>
> </includes>
> <!--
> <excludes>
> <exclude>
> **/*Test*All.java
> </exclude>
> </excludes>
> -->
> </unitTest>
> </build>
>
> </project>
>
> ==========project.xml in root folder ==========END
> ==========HelloBean.java ==========BEG
> package tw.idv.arsene.maven.sample.ejb;
>
> import javax.ejb.*;
>
> /**
> * @ejb:bean name="Hello"
> * description="Sample to test xdoclet"
> * jndi-name="ejb/Hello"
> * type="Stateless"
> */
>
> public class HelloBean extends BaseSessionBean {
>
> /**
> * @ejb:interface-method view-type="remote"
> */
> public String speak(){
> return "hello";
> }
>
> }
>
> ==========HelloBean.java ==========END
> ==========BaseSessionBean.java ==========BEG
> package tw.idv.arsene.maven.sample.ejb;
>
> import javax.ejb.*;
> /**
> * @ejb:bean
> * name="BaseSession"
> * type="Stateless"
> * view-type="remote"
> * jndi-name="ejb/BaseSession"
> */
> public class BaseSessionBean implements SessionBean{
> /**
> * @ejb:create-method
> */
> public void ejbCreate() throws CreateException{}
> public void ejbRemove(){}
> public void setSessionContext(SessionContext context){ }
> public void ejbPassivate(){ }
> public void ejbActivate(){}
> }
> ==========BaseSessionBean.java ==========END
>
>
>
> Cool Things Happen When Mac Users Meet! Join the community in
> Boston this July: www.macworldexpo.com
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
> For additional commands, e-mail: users-help@maven.apache.org
>
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org