少し前に「画面遷移に悩む」を書いたのですが、そこからパートナーと一緒に色々探った結果、最終的には自前でCDIのViewScopeを作るのが最も自分たちの理想に近い動きをすることがわかりました。
参考にしたのはこちらのサイト
http://www.verborgh.be/articles/2010/01/06/porting-the-viewscoped-jsf-annotation-to-cdi/
Stackoverflowでも色々議論されていて
http://stackoverflow.com/questions/11832666/jsf-2-0-cdi-scopes-and-best-practises
http://stackoverflow.com/questions/4865047/view-scope-in-cdi-weld
等など、他にもたくさん出てきました。やはり皆、どういうスコープを使うのが良いのか悩んでいる様子。
MyFaceのCODIを使う、とか、JBoss Seam3を使う等の解決策もありましたが、自分達はまだそういったものを扱えるほどのレベルではないので積極的になれませんでした。
で、投稿回答の中に、Seamを使ってなくて普通のJSFとPrimefacesを使っている、と言う人が(今回自分たちが参考にした)上記のサイトをあげていて、実装してみたら理想に近い形となりました。
結局の所、単純にJSFの@ViewScopeをCDIで使えればいい、というものなので、なぜCDIの標準としてViewScopeがないのか疑問です。。。
それにしても割と単純なWebシステムのプロトタイプを作るだけなのに、学習コストが高いなぁという気がします。
ASP.NETならば、わりと悩まない話かと思います。