2

いくつかの実験の後、私はGETパラメータをEL@ManagedBeanを使用して(したがってJSF)Beanに注入することができました。@ManagedProperty

現在、 からパラメーター マップを読み取る方法を除いてFacesContext.getCurrentInstance().getExternalContext()、GET パラメーターを@Named(したがって、CDI-) Bean に注入することはできませんでした。

そのため、JSF Bean と CDI Bean の長所と短所について読んでいます。要するに、私は 2 つの質問に行き詰まっています。CDI Bean よりも JSF Bean を使用する場合、何か不利な点はありますか? 2番目。もしそうなら、私のGETパラメータをCDI Beanに注入するきれいな方法はありますか?

4

1 に答える 1

1

ここで炎上戦争を始めないことを願っていますが、CDIスコープと依存性注入メカニズムはJSFスコープよりもはるかに広い範囲をカバーしていると言っても過言ではありません。一般的に言えば、CDIスコープの方が適していますが、ここでほぼ任意の詳細に入ることができます。

問題について:Seam Solderは、とりわけhttp-parameter-injectionをもたらします。これをチェックしてください。

更新: Solderをプロジェクトに統合することを恐れている場合は(そうしないでください!)、魔法を実行する関連するソースコードを確認してください。プロジェクトに簡単にコピーできます。Solderの背後にいる開発者が、おそらくその場で思いつくよりもいくつかのコーナーケースを頭に入れていただけです。

于 2012-07-25T11:52:48.753 に答える