基于EL的条件重定向

时间:2013-08-05 15:45:18

标签: jboss seam

我有一个缝网应用程序。 在用户导航期间,我希望在用户上方成功登录后再次访问登录页面。 当用户成功登录时,会将其重定向到home.xhtml页面。 如果(登录后)用户再次输入登录页面的URL,我想将其自动重定向到家。

我尝试使用Seam pages.xml:

<page view-id="/common/jsp/login.xhtml">
    <navigation>
        <rule if="#{myUserBean.isUserAlreadyAuthenticated()} ">
            <redirect view-id="/home.xhtml"/>
        </rule>
    </navigation>

但它不起作用。可能是因为Seam手册指定:

  

规则通过评估action方法的返回值来工作;它是   无法评估任意EL表达式。

但在我的情况下,它不会来自任何特定的操作,用户要求已经记录的会话中的登录页面,他可以让alredy做了很多动作,或者也没有人。

你有什么建议吗?

1 个答案:

答案 0 :(得分:1)

我应该以这种方式解决:

<page view-id="/common/jsp/login.xhtml" action ="#{myUserBean.isUserAlreadyAuthenticated()}">
<navigation>
    <rule if-outcome="true">
        <redirect view-id="/home.xhtml"/>
    </rule>
</navigation>
相关问题