XDoclet plugin failed: @ejb.transaction type="Required" is not allowed on methods -----------------------------------------------------------------------------------
Key: XDP-221 URL: http://jira.codehaus.org/browse/XDP-221 Project: XDoclet 2 Plugins Issue Type: Bug Components: ejb Affects Versions: 1.0.4 Environment: maven 2.0.7, maven2-xdoclet2-plugin 2.0.6-SNAPSHOT, xdoclet-plugin-ejb 1.0.4-SNAPSHOT Reporter: ashvedov Priority: Blocker Processing java class like that: /** * ObjectSecurityService remote facade. * * @ejb.bean name="ObjectSecurityService" type="Stateless" transaction-type="Container" * @ejb.home remote-pattern="Remote{0}Home" * @ejb.interface remote-pattern="Remote{0}" */ public class RemoteObjectSecurityServiceBean extends AbstractRemoteServiceBean implements ObjectSecurityService { private ObjectSecurityService service; public void onEjbCreate() { service = (ObjectSecurityService) getBeanFactory().getBean("objectSecurityService"); } /** * @ejb.interface-method * @ejb.transaction type="Required" */ public Set getObjects(String username) { return service.getObjects(username); } ....... I've got an error org.apache.maven.lifecycle.LifecycleExecutionException: XDoclet plugin failed: java.lang.RuntimeException: @ejb.transaction type="Required" in ru.fors.security.object.ejb.RemoteObjectSecurityServiceBean (line 26): is not allowed on methods at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:564) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:480) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:459) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:311) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:278) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:143) at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:334) at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:125) at org.apache.maven.cli.MavenCli.main(MavenCli.java:280) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315) at org.codehaus.classworlds.Launcher.launch(Launcher.java:255) at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430) at org.codehaus.classworlds.Launcher.main(Launcher.java:375) Caused by: org.apache.maven.plugin.MojoExecutionException: XDoclet plugin failed: java.lang.RuntimeException: @ejb.transaction type="Required" in ru.fors.security.object.ejb.RemoteObjectSecurityServiceBean (line 26): is not allowed on methods at org.codehaus.xdoclet.XDocletMojo.execute(XDocletMojo.java:158) at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:443) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:539) ... 16 more Caused by: java.lang.RuntimeException: java.lang.RuntimeException: @ejb.transaction type="Required" in ru.fors.security.object.ejb.RemoteObjectSecurityServiceBean (line 26): is not allowed on methods at org.generama.ConfigurableDocletTagFactory.createDocletTag(ConfigurableDocletTagFactory.java:74) at org.xdoclet.ModelCheckerTagFactory.createDocletTag(ModelCheckerTagFactory.java:40) at com.thoughtworks.qdox.model.ModelBuilder.addJavaDoc(ModelBuilder.java:127) at com.thoughtworks.qdox.model.ModelBuilder.addMethod(ModelBuilder.java:178) at com.thoughtworks.qdox.parser.impl.Parser.yyparse(Parser.java:1010) at com.thoughtworks.qdox.parser.impl.Parser.parse(Parser.java:592) at com.thoughtworks.qdox.JavaDocBuilder.addSource(JavaDocBuilder.java:300) at com.thoughtworks.qdox.JavaDocBuilder.addSource(JavaDocBuilder.java:316) at org.xdoclet.QDoxMetadataProvider.addSourcesFromJavaSourceProvider(QDoxMetadataProvider.java:129) at org.xdoclet.QDoxMetadataProvider.getMetadata(QDoxMetadataProvider.java:152) at org.xdoclet.plugin.ejb.util.QDoxFilterMetadataProvider.getMetadata(QDoxFilterMetadataProvider.java:29) at org.xdoclet.plugin.ejb.util.QDoxCachedMetadataProvider.getMetadata(QDoxCachedMetadataProvider.java:25) at org.generama.defaults.QDoxPlugin.getMetadata(QDoxPlugin.java:56) at org.generama.Plugin.start(Plugin.java:238) at org.picocontainer.defaults.DefaultPicoContainer.start(DefaultPicoContainer.java:349) at org.nanocontainer.integrationkit.LifecycleContainerBuilder.autoStart(LifecycleContainerBuilder.java:52) at org.nanocontainer.integrationkit.LifecycleContainerBuilder.buildContainer(LifecycleContainerBuilder.java:45) at org.codehaus.xdoclet.XDocletMojo.execute(XDocletMojo.java:149) ... 18 more Caused by: java.lang.RuntimeException: @ejb.transaction type="Required" in ru.fors.security.object.ejb.RemoteObjectSecurityServiceBean (line 26): is not allowed on methods at org.xdoclet.XDocletTag.bomb(XDocletTag.java:62) at org.xdoclet.plugin.ejb.qtags.EjbTransactionTagImpl.validateLocation(EjbTransactionTagImpl.java:73) at org.xdoclet.XDocletTag.<init>(XDocletTag.java:56) at org.xdoclet.XDocletTag.<init>(XDocletTag.java:40) at org.xdoclet.plugin.ejb.qtags.EjbTransactionTagImpl.<init>(EjbTransactionTagImpl.java:18) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) at java.lang.reflect.Constructor.newInstance(Constructor.java:494) at org.generama.ConfigurableDocletTagFactory.createDocletTag(ConfigurableDocletTagFactory.java:55) ... 35 more My pom file: <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>ru.fors</groupId> <artifactId>security-objects</artifactId> <packaging>ejb</packaging> <parent> <groupId>ru.fors</groupId> <artifactId>fdc-parent</artifactId> <version>1</version> </parent> <version>1.2-SNAPSHOT</version> <name>Security objects</name> <description>Security objects layer access control system</description> <url>http://sunny.fors.ru/projects/${pom.artifactId}/</url> <organization> <name>Fors Development Center</name> <url>http://www.fdc.ru</url> </organization> <inceptionYear>2005</inceptionYear> <issueManagement> <system>Clearquest</system> <url>http://matr.fdc.ru/CqWeb/logon/default.asp</url> </issueManagement> <!-- <siteDirectory>/var/www/html/projects/</siteDirectory> <distributionDirectory>/var/www/html/builds/</distributionDirectory> --> <scm> <connection>scm:svn:http://sunny.fors.ru/svn/security/security-objects/trunk/</connection> <developerConnection>scm:svn:http://sunny.fors.ru/svn/security/security-objects/trunk/</developerConnection> <url>scm:svn:http://sunny.fors.ru/svn/security/security-objects/trunk/</url> </scm> <mailingLists/> <dependencies> <dependency> <groupId>ejb</groupId> <artifactId>ejb</artifactId> <version>2.0</version> </dependency> <dependency> <groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> <version>1.0.3</version> </dependency> <dependency> <groupId>commons-lang</groupId> <artifactId>commons-lang</artifactId> <version>2.0</version> </dependency> <dependency> <groupId>ru.fors</groupId> <artifactId>ejbutil</artifactId> <version>${ejbutil.version}</version> <type>ejb</type> </dependency> <dependency> <groupId>ru.fors</groupId> <artifactId>fdc-util</artifactId> <version>${fdc-util.version}</version> </dependency> <dependency> <groupId>hibernate</groupId> <artifactId>hibernate</artifactId> <version>${hibernate.version}</version> </dependency> <!-- <dependency> <groupId>xdoclet</groupId> <artifactId>xdoclet-ejb-module</artifactId> <version>${xdoclet.version}</version> </dependency> <dependency> <groupId>xdoclet</groupId> <artifactId>xdoclet-oracle-module</artifactId> <version>${xdoclet.version}</version> </dependency> --> <dependency> <groupId>spring</groupId> <artifactId>spring</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>aopalliance</groupId> <artifactId>aopalliance</artifactId> <version>1.0</version> </dependency> </dependencies> <properties> <aopalliance.version>1.0</aopalliance.version> <commons_logging.version>1.0.3</commons_logging.version> <commons_collections.version>3.1</commons_collections.version> <easymock.version>1.1</easymock.version> <hibernate.version>2.1.8</hibernate.version> <spring.version>2.0.6</spring.version> <ejbutil.version>1.2-SNAPSHOT</ejbutil.version> <fdc-util.version>0.4-SNAPSHOT</fdc-util.version> </properties> <build> <sourceDirectory>src/java</sourceDirectory> <testSourceDirectory>src/test</testSourceDirectory> <resources> <resource> <directory>${basedir}/src/conf</directory> <includes> <include>*.xml</include> </includes> </resource> <resource> <directory>${basedir}/src/java</directory> <includes> <include>**/*.hbm.xml</include> </includes> </resource> </resources> <plugins> <plugin> <groupId>xdoclet</groupId> <artifactId>maven2-xdoclet2-plugin</artifactId> <version>2.0.6-SNAPSHOT</version> <executions> <execution> <id>xdoclet</id> <phase>generate-sources</phase> <goals> <goal>xdoclet</goal> </goals> </execution> </executions> <dependencies> <dependency> <groupId>xdoclet-plugins</groupId> <artifactId>xdoclet-plugin-ejb</artifactId> <version>1.0.4-SNAPSHOT</version> </dependency> </dependencies> <configuration> <configs> <config> <components> <component> <classname>org.xdoclet.plugin.ejb.EjbConfig</classname> <params> <version>2.1</version> <!--<destdir>${project.build.outputDirectory}</destdir>--> <validate>false</validate> </params> </component> <component> <classname>org.xdoclet.plugin.ejb.interfaces.RemoteInterfacePlugin</classname> <params> <verbose>true</verbose> <force>true</force> <!--<destdir>${project.build.outputDirectory}/src</destdir>--> </params> </component> <component> <classname>org.xdoclet.plugin.ejb.interfaces.RemoteHomeInterfacePlugin</classname> <params> <verbose>true</verbose> <force>true</force> <!--<destdir>${project.build.outputDirectory}/src</destdir>--> </params> </component> <component> <classname>org.xdoclet.plugin.ejb.descriptor.EjbJarXmlPlugin</classname> <params> <verbose>true</verbose> <force>true</force> <!--<destdir>${project.build.outputDirectory}/META-INF</destdir>--> </params> </component> <!--=== <component classname="org.xdoclet.plugin.weblogic.ejb.descriptor.WeblogicEjbJarXmlPlugin" description="${ant.project.name}" verbose="true" force="${xdoclet.force}" destdir="${basedir}/${interaction.build.dir}/META-INF"/> ==--> </components> <encoding>UTF-8</encoding> </config> </configs> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-ejb-plugin</artifactId> <configuration> <ejbVersion>2.1</ejbVersion> <archive> <manifest> <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries> <addDefaultImplementationEntries>true</addDefaultImplementationEntries> </manifest> </archive> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.5</source> <target>1.5</target> </configuration> </plugin> </plugins> </build> <!-- <versions> <version> <id>1.1</id> <name>1.1</name> <tag>RELEASE_1_1</tag> </version> </versions> --> </project> -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ xdoclet-plugins-interest mailing list xdoclet-plugins-interest@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/xdoclet-plugins-interest