2011-12-25 20 views
0

私は現在、セッションスコープのBeanによって呼び出されるEJBを持つサーバーを持っています。 EJBは、ユーザがどの状態にあるか、すなわちフロントエンドがどのビューを表示すべきかを本質的に把握する。ユーザーは単にログインして問題のビューにリダイレクトされます。現時点では、EJBはPOJOを返します。ここでは、セッションスコープBeanがどのビューを表示するかを特定する状態の列挙型が定義されています。私の質問は、これを行うよりエレガントな方法はありますか?私はJSF、Facelets、Seamの新機能ですが、リスナーとオブザーバーのパターンを使用してMVCとMVPで多くの経験を持っています。ログインしているユーザーの状態に応じて表示方法を教えてください。

答えて

0

このような何か試してみてください:

<page view-id="/pagewithlink.xhtml"> 
    <navigation> 
     <rule if="#{identity.isLoggedIn}"> 
     <redirect view-id="/first.xhtml"/> 
     </rule> 
     <rule if="#{!identity.isLoggedIn}"> 
     <redirect view-id="/other.xhtml"/> 
     </rule> 
    </navigation> 
    </page>