EJB3で、新しいステートフルセッションBeanを取得するためにJNDIを使用する方法?

StackOverflow https://stackoverflow.com/questions/2838769

質問

私は(ローカル変数など)サーブレットで新しいステートフル・セッションBeanを取得するためにJNDIを使用しようとしています。マイdoGet()方法は、以下があります:

Bean bean = (Bean) new InitialContext().lookup("beanName");

私はjava:comp/env含めて試してみたが、私の試みのすべてが例外に名前を付けるようになった。

私は@Stateful@Stateful(name="beanName")のような様々な推測を使用して、@Stateful(mappedName="beanName")注釈でBeanをバインドしようとしています。

役に立ちましたか?

解決

私は必要なもの

は、次のように、クラスレベルでサーブレットに@EJBアノテーションを使用することでした。

@EJB(name="beanName", beanInterface = Bean.class)

次に検索サービスメソッドで@EJB注釈に縛ら名を使用して発生する可能性があります

Bean beanInstance = (Bean) new InitialContext().lookup("java:comp/env/beanName");

平野@Stateful注釈以外のBeanクラス自体に何のための必要は、ありません。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top