JSF2アノテーションの前に、開発者はにfaces-config.xml
というBeanを登録する必要があります。サポートはJSF2にまだありますが、サード・パーティJARにパッケージされているマネージドBeanの注釈をオーバーライドする場合は、オプションになり、場合によっては唯一の方法となります。
JSFとCDIの前にロングは、plain JSP/Servletで、開発者は(プレチェックを省略し、手動で明示的にインスタンス化し、明示的に
request.setAttribute("requestScopedBean", requestScopedBean);
request.getSession().setAttribute("sessionScopedBean", sessionScopedBean);
getServletContext().setAttribute("applicationScopedBean", applicationScopedBean);
によってリクエスト、セッションまたはアプリケーションスコープでそれらを配置することにより、豆自体を作成して管理する必要がありますBeanはスコープ内に配置されているだけですが、それ以外の場合は再利用されます)
上記はJSFが「カバーしている」ものです。
次に、さまざまなMVCフレームワークが、BeanをXMLファイルで宣言することによって、またはアノテーションでも宣言することによって、これを抽象化するために考案されました。すべてのMVCフレームワークには独自の方法で豆を管理していました。その後、フレームワークに依存しないアプローチを提供することで統一しようとしていたSpringがありました。それを標準化したJava EE 6 CDIがありました。
このすべては常にコンテナに依存しませんでした。これはフレームワーク固有のものです。
ここで私はあなたを助けると思う素晴らしい答え - http://stackoverflow.com/questions/2930889/are-managedbeans-obsolete-in-javaee6-because-of-named-in-cdi-weld。 – Perception
@Perceptionこんにちは、ありがとう。これは私の質問にほとんど答えましたが、まだ残っています。 '@ ManagedBean'が実装のために(そしてこれはビューをサポートするBeanにのみ適用される)アノテーションであった場合、Beanで何をしましたかビジネス層で?この責任をEJBコンテナに残す可能性はありませんでしたか? – LuckyLuke