式のEJBを解決するために、Spring式言語用のカスタムBeanResolverを作成したいと思います(たとえば"@MyBean.property=='example-value'"
)。JNDI-Lookupを実行せずに、名前でBeanを取得するにはどうすればよいですか?選択したアプリケーションサーバー(Glassfish)のプラグインを作成する必要がありますか?
1142 次
1 に答える
2
EEインジェクションとJNDIルックアップは、すべてのEJBへのエントリポイントです。EJBのインスタンスを取得する他の標準的な方法はありません。EJB 3.1を使用している場合、、、およびのバインディングはjava:global
明確java:app
にjava:module
定義されており、開発者が変更することはできません。
java:global/MyApp/MyModule/MyBean!com.example.MyIntf
java:app/MyModule/MyBean!com.example.MyIntf
java:module/MyBean!com.example.MyIntf
これにより、EJBを名前で効果的に見つけることができます。(JNDIが必要ですが、バインディングが問題になる理由は理解できますが、JNDI自体が問題になる理由は説明からはわかりません。)EJBがサポートするインターフェイスが1つだけであることがわかっている場合は、を省略できます!com.example.MyIntf
。
于 2012-11-10T16:09:16.353 に答える