hello all,
i am trying to expose an EJB as a webservice in my app that is using Maven2
what i am trying to do is to generate sources with xdoclet, and then use
wseedoclet to generate wsdl file
and mappings....
At runtime, generation of sources works fine...
generation of ejb jar works partially fine (my ejb tobe exposed as
webservice does not have correct endpoint)..
and wseedoclet doesnot run at all giving this error
here's my pom.xml (only relevant part)
Embedded error: Ambiguous subtask definition for logical name
deploymentdescript
or: xdoclet.modules.ejb.dd.EjbDotXmlSubTask and
xdoclet.modules.wsee.WebServices
XmlSubTask
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>xdoclet-maven-plugin</artifactId>
<executions>
<execution>
<id>generateSources</id>
<phase>generate-sources</phase>
<goals>
<goal>xdoclet</goal>
</goals>
<configuration>
<tasks>
<ejbdoclet
destDir="${project.build.directory}/generated-sources/xdoclet"
excludedTags="@author,@version">
<fileset
dir="src/main/java"
includes="**/*Bean.java" />
<service-endpoint />
<entitycmp
destDir="${project.build.directory}/generated-sources/xdoclet"
/>
<homeinterface destDir="${project.build.directory
}/generated-sources/xdoclet">
<!-- <packagesubstitution packages="session"
substituteWith="interfaces" useFirst=" true"/>
-->
</homeinterface>
<localinterface destDir="${project.build.directory
}/generated-sources/xdoclet"/>
<localhomeinterface destDir="${project.build.directory
}/generated-sources/xdoclet"/>
<remoteinterface destDir="${project.build.directory
}/generated-sources/xdoclet"/>
<deploymentdescriptor
destDir="${project.build.outputDirectory
}/META-INF"/>
<jboss version="4.0"
destDir="${project.build.outputDirectory}/META-INF"
dataSource="java:/DefaultDS"
datasourceMapping="Hypersonic SQL"
createTable="true"
removeTable="true"/>
</ejbdoclet>
</tasks>
</configuration>
</execution>
<execution>
<id>generateWsdl</id>
<phase>process-classes</phase>
<goals>
<goal>xdoclet</goal>
</goals>
<configuration>
<tasks>
<wseedoclet jaxrpcMappingFile="mappings.xml"
wsdlFile="wsdl/service.wsdl"
destDir="target/META-INF" force="true"
verbose="true">
<fileset dir="src" includes="**/*Bean.java" />
<fileset dir="target" includes="**/*IF.*java" />
<!-- <deploymentdescriptor>
<configParam name="Name" value="TestService" />
</deploymentdescriptor>-->
<jaxrpc-mapping/>
<wsdl/>
</wseedoclet>
</tasks>
</configuration>
</execution>
</executions>
</plugin>
and here's part of my annotated ejb
/**
* @ejb.bean
* name="TranslationServiceSession"
* view-type="service-endpoint"
* local-jndi-name="ngen/mw/ejb/TranslationServiceSessionLocalHome"
*
* @wsee.port-component name="TranslationServiceIFPort"
*
* @ejb.interface service-endpoint-class="
com.waersystems.mw.webservices.TranslationServiceIF"
..
the TranslationServiceIF interface gets generated properly, but the
deployment descriptor is still wrong
<session >
<description><![CDATA[]]></description>
<ejb-name>TranslationServiceSession</ejb-name>
<ejb-class>com.mmistroni.mw.ejb.TranslationServiceSessionBean
</ejb-class>
<session-type>Stateless</session-type>
<transaction-type>Container</transaction-type>
can anyone help me out?
thanx and regards
marco