2011-11-08 18 views
0

私はいくつかの移行プロジェクトに取り組んでおり、Ant/CVS/Jboss4/Java5からMaven/SVN/Jboss7/Java6 - これは厄介になる。EJB仕様違反:メッセージ駆動型BeanはonMessage()メソッドを宣言する必要があります

最初のステップでは、私はant buildをmavenに移動することに取り組んでいます。それはiteslfには多くの複雑さが伴います。私は耳のファイルを作成して、それを蟻のビルドの耳と比較しました。

さて、最初の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) 

をencouter私はこのスレッドjBoss deployment of message-driven bean spec violationに出くわした - ので、私は私の新しいMavenのビルドに間違ったライブラリを使用していた考え出し、私はそれを交換し、それを使っていることを確認しました同じjavax.jmsライブラリ(これは今、元のantビルドとしてjavax.jms.Messageを含む同じjarを指しています) - 実際、私は単にantビルドで参照されるjarファイルを取得し、それをmavenリポジトリにアップロードして、ビルドします。

しかし、私はまだ上記の問題に遭遇します。オリジナルのant-buildは問題なく展開されますが、現在私はこの問題をmaven-buildの耳に残しています。

別のクラスファイルに問題がないことを確認するために他に取り組むべきことはありますか?ありがとう!

答えて

1

javax.jmsライブラリが耳に入っていますか(jboss-j2ee.jar、jboss-client.jarなど)?もしそうなら、あなたはアプリケーションサーバによって提供されたものを使いたいので、それを望んでいません。あなたのpomの依存関係を変更して、あなたの耳にはないものを<scope>provided</scope>にすることで、これを修正できます。

+0

ありがとう! ...同じソリューションで解決したバリエーションが増えました –

関連する問題