2016-05-14 2 views
0

を動作していませんビーン経由:EJB @DependsOnは、私はこのような注釈が付けられているBeanを持って

@Startup 
@Singleton 
public class Boo { 

@Inject 
Instance<Inf> infs; 

} 

これは問題なく動作します。しかし、@DependsOnが正しく動作しないようです。私の起動時に私のコンテナのクラス "Foo"は "Bar"の前に実行されます。

誰か手掛かりがありますか?

+0

どのようにクラス 'Foo'がBar''前に実行されると言うん?いくつかのエラースタックトレースを追加してください。または、ありがとうございます。 @Christopher –

答えて

1

@DependsOnがシングルトンの場合のみ有効です事前に

おかげで、それはステートレス豆の文脈では意味がありません

+0

ああ、私は参照してください! claryfingありがとう。しかし、@ Singletonとしてマークされていない別のBeanに「依存関係」を持たせる方法はありますか?実際には、その豆をヒープに永久に入れたくない場合 –

+0

豆を\ @EJB でお互いに注入したり、CDIを使用している場合は\ @注入したりできます。 CDIでは\ @Singleton(\ @RequestScopedやカスタム定義スコープなど)よりも小さなスコープを持つこともできます。 \ @ステートレスBeanを定義しても状態は保持されないので、実際に保持されているデータではない機能に頼るべきです – highstakes

+0

ありがとう!本当に良い答えです! –

関連する問題