Weblogic 開発環境 (Oracle Workshop for WebLogic 10.3) での操作方法のヘルプが必要です。
ある .jar にセッション Bean があり、別の .jar のメッセージ駆動型 Bean からそれを使用する必要があります。セッション Bean を検索するときに「java:comp/env/...」表記を使用したい。
jndiCtx = new InitialContext();
workerHome = (WorkerSBLocalHome) jndiCtx.lookup("java:comp/env/ejb/WorkerSBLocalHome");
WorkerSBLocal worker = workerHome.create();
したがって、MDB コンポーネントのデプロイメント記述子 (ejb-jar.xml) に ejb 参照を作成する必要があります。
<ejb-local-ref>
<ejb-ref-name>ejb/WorkerSBLocalHome</ejb-ref-name>
<ejb-ref-type>Session</ejb-ref-type>
<local-home>test.WorkerSBLocalHome</local-home>
<local>test.WorkerSBLocal</local>
<ejb-link>WorkerEJB.jar#WorkerSB</ejb-link>
</ejb-local-ref>
これは機能します(テスト済み)。問題は、MDB デプロイメント記述子が生成され、MDB ソースを編集するたびに、Oracle Workshop がクラス アノテーションを使用してデプロイメント記述子を再生成し、追加内容を上書きすることです。
私の質問は次のとおりです。Oracle Workshop for WL を使用する場合、MDB から EJB を参照する最良の方法は何ですか? または、ejb アノテーションを使用する場合に、上記で概説したもの以外に、Bean 参照を作成するための推奨される方法はありますか? または、Bean 参照を別の場所に配置する必要がありますか?