Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/303.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java EJB规范冲突:消息驱动bean必须声明一个onMessage()方法_Java_Maven_Jboss - Fatal编程技术网

Java EJB规范冲突:消息驱动bean必须声明一个onMessage()方法

Java EJB规范冲突:消息驱动bean必须声明一个onMessage()方法,java,maven,jboss,Java,Maven,Jboss,我正在做一些迁移项目,涉及到从Ant/CVS/Jboss4/Java5到Maven/SVN/Jboss7/Java6的迁移,这让人讨厌 第一步,我正在将ant构建迁移到maven——iteslf中的ant构建涉及很多复杂的问题。现在我构建了ear文件,并将其与ant构建的ear进行了比较,我认为我在maven构建中获得了很好的效果 现在,首先在Jboss4上部署,我遇到 [ejb.EJBDeployer.verifier] EJB spec violation: Warning: The mes

我正在做一些迁移项目,涉及到从Ant/CVS/Jboss4/Java5到Maven/SVN/Jboss7/Java6的迁移,这让人讨厌

第一步,我正在将ant构建迁移到maven——iteslf中的ant构建涉及很多复杂的问题。现在我构建了ear文件,并将其与ant构建的ear进行了比较,我认为我在maven构建中获得了很好的效果

现在,首先在Jboss4上部署,我遇到

[ejb.EJBDeployer.verifier] EJB spec violation:
Warning: The message driven bean must declare one onMessage() method.

2011-11-08 15:25:03,079 ERROR (Thread: main) [jboss.deployment.MainDeployer] Could not create deployment: file:/opt/jboss-4.0.3SP1/server/default/tmp/deploy/tmp46514Billing-EAR-1.0.ear-contents/processsubscriptionbean-1.0.jar
org.jboss.deployment.DeploymentException: Verification of Enterprise Beans failed, see above for error messages.
        at org.jboss.ejb.EJBDeployer.create(EJBDeployer.java:575)
        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.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:141)
        at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80)
        at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:118)
        at org.jboss.mx.server.Invocation.invoke(Invocation.java:74)
        at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:127)
        at org.jboss.mx.interceptor.DynamicInterceptor.invoke(DynamicInterceptor.java:80)
        at org.jboss.mx.server.Invocation.invoke(Invocation.java:74)
        at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:245)
        at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:644)
        at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:176)
        at $Proxy24.create(Unknown Source)
        at org.jboss.deployment.MainDeployer.create(MainDeployer.java:935)
        at org.jboss.deployment.MainDeployer.create(MainDeployer.java:925)
        at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:789)
我遇到了这个线程——因此我认为我在新的maven构建中使用了错误的库,我替换了它,并确保它使用了相同的javax.jms库(这现在指向与原始ant构建相同的包含javax.jms.Message的jar)-事实上,我只是简单地抓取ant构建引用的jar并将其上传到maven repo,然后从我的maven构建中引用它

但我仍然遇到上述问题。最初的ant构建将毫无问题地部署,但目前我在maven构建ear中遇到了这个问题


关于我可以采取哪些其他步骤来确保没有不同的类文件问题,有什么建议吗?谢谢

javax.jms库是否正在您的ear中打包(jboss-j2ee.jar、jboss-client.jar等)?如果是这样的话,您不希望这样,因为您希望使用应用服务器提供的应用程序。您可以通过更改pom中的依赖项来修复此问题,以便为不应该在您耳朵中的任何内容提供

谢谢。。。我遇到了更多由同一个解决方案解决的变体