0

私のプロジェクトは JSF2.0 と WAS8.0 を使用しています。そして、@ConversationScoped CDI Bean をページのバッキング Bean として使用します。この Bean の元の注釈は次のとおりです。

    @Named("myBean")
    @ConversationScoped
    @Stateful

次に、ページが読み込まれているときに、Property not found エラーが発生しました。ELはまったく機能していないようです。次に @LocalBean を追加しました (私のバッキング Bean MyBean はインターフェイスを実装していますが、インターフェイスに @Local アノテーションはありません):

    @Named("myBean")
    @LocalBean
    @ConversationScoped
    @Stateful

その後、すべてがうまく機能します。それはWebSphereに固有のものですか?または、CDI の一般的な要件 ( @LocalBean も @Local 注釈付きインターフェースを実装していない例もいくつか見たことがあると思います。

4

1 に答える 1

1

私には必要なようです。おそらく、あなたが見た他の Bean は EJB Bean ではありませんでした:

セッション Bean の無制限の Bean タイプのセットには、Bean のすべてのローカル インターフェースとそのスーパーインターフェースが含まれます。セッション Bean に Bean クラスのローカル ビューがある場合、無制限の Bean タイプのセットには、Bean クラスとすべてのスーパークラスが含まれます。また、java.lang.Object はすべてのセッション Bean の Bean タイプです。

リモート インターフェイスは、一連の Bean タイプに含まれていません。

于 2013-03-16T13:37:22.670 に答える