jsf2、jboss 6.1、および seam 3 を使用するアプリがあります。次のようなことをしたいです。
ユーザーがアプリにアクセスしようとして認証されない場合は、ログイン ページに誘導する必要があります。ユーザーがログイン URL を入力しても既にログインしている場合は、ホーム ページにリダイレクトされ、再度ログインする必要はありません。だから私はこれをfaces-config.xmlに入れました
<navigation-rule>
<navigation-rule>
<from-view-id>/login.xhtml</from-view-id>
<navigation-case>
<if>#{identity.loggedIn}</if>
<to-view-id>/user/search.xhtml</to-view-id>
<redirect>
<view-param>
<name>cid</name>
<value>#{userBean.conversation.id}</value>
</view-param>
</redirect>
</navigation-case>
</navigation-rule>
<from-view-id>*</from-view-id>
<navigation-case>
<from-action>#{identity.login}</from-action>
<if>#{identity.loggedIn}</if>
<to-view-id>/user/search.xhtml</to-view-id>
<redirect>
<view-param>
<name>cid</name>
<value>#{userBean.conversation.id}</value>
</view-param>
</redirect>
</navigation-case>
<navigation-case>
<from-action>#{identity.login}</from-action>
<from-outcome>failed</from-outcome>
<to-view-id>/denied.xhtml</to-view-id>
</navigation-case>
<navigation-case>
<from-outcome>login</from-outcome>
<to-view-id>/login.xhtml</to-view-id>
<redirect />
</navigation-case>
</navigation-rule>
しかし、最初のルールは機能しません。ユーザーが login.xhtml で URL を入力すると、ページにとどまります。彼をリダイレクトする必要があります。どうやってやるの?
ありがとう
ケリー