2012-02-22 19 views
0

OpenEJBに依存するEJBをパッケージ化してデプロイする方法に関するいくつかのドキュメント/仕様がありますか?依存関係のあるスタンドアロンOpenEJBパッケージ

私はEARパッケージを展開しようとした:

service.ear/lib/activemq-all.jar 
service.ear/META-INF/application.xml 
service.ear/model.ejb!META-INF/ejb-jar.xml 
service.ear/model.ejb!com/example/MyActivemqDependentService.class 

それが正常に展開された、クライアントは、それが初期化されたときに、がNoClassDefFound例外ocurrをJNDIを使用して見つけることができますが。

答えて

1

ActiveMQには既にOpenEJBが付属していますので、EARにも含めて動作するとは思われません。

これはおそらくあなたのNoClassDefFoundErrorのソースになる可能性があります。そのactivemq-all.jarを削除することが、私が試してみたい最初のことです。

+0

これは、現在の問題を解決します。私はしばらくの間、アプリケーションをテストし、この除外がいくつかのactivemq依存コードに影響しないかどうかを確認します。よろしくお願いします。 – apast

+0

自分の好きなバージョンの自分のバージョンを出荷できないのでしょうか?私はそれがクラスローダーの継承の背後にある考えだと思った。 – SkyDan

+0

OpenEJBでは実際に標準の 'java.net.URLClassLoader'を使用しているため、プレーンJava SEアプリケーションと同じクラスローディングセマンティクスを持っています。親クラスローダーにはActiveMQがあるため、子クラスローダーはそれを見て使用することができます。 –

関連する問題