別の構成が必要な既存のプロジェクトがあります。これは、コードを大幅に変更せずに行う必要があります。私は実際に、構成だけで何とかこれを行うことができることを望んでいます。私は過去 2 ~ 3 日間、この号に関する情報をすべて読みました。私はグラスフィッシュのクラスローダと、私が利用できるものを理解しています。
@Local インターフェースを定義する EJB を持つ現在のサンプル プロジェクトがあります。ejb は、ejb-module 内で ejb-module として Glassfish ドメインにデプロイされます。現在、同じドメインに耳としてデプロイされた別のアプリケーションが、ローカル インターフェイスを介してその EJB にアクセスできるようにする方法を見つけようとしています。
これは不可能であるというドキュメントを読みました。それから、ここStackOverflowでの投稿を見たことがあります.Web上でそれが可能であると言っている人もいます。しかし、私は実際の解決策を見つけることができません。
調査の結果、 @Local EJB が jndi に登録されていないことがわかりました (少なくともログによると)。glassfish JNDI ブラウザーを使用すると、それも表示されません。したがって、それが不可能であるか、EJB プロジェクトのデプロイメントに問題があり、どうにかしてそれを公開する必要があるということは、私には理にかなっています。
@Remote は、参照によるものであれば可能であり、パフォーマンスのオーバーヘッドはありません。しかし、@Local EJB アクセスを許可する推奨される方法は、実際には究極のニーズです。
@Local EJB を別のアプリケーションに公開するために何をする必要があるか知っている人はいますか? それとも、これは明らかに不可能ですか?
EJB 3.0でGlassfish 2.1を使用しています
Glassfish 2.1 が EJB 3.1 を処理できるのであれば、この機能が提供されていれば喜んでそれに移行したいと思いますが、それほど簡単かどうかは疑問です。
手伝ってください。ありがとうございました。
賞金を追加しています。バウンティを完了するには、同じドメインで 2 つの ear アプリケーションを実行する必要があります。ここで、A.ear には、B.ear のアプリケーションでも使用される @Local EJB が含まれています。