2013-08-05 4 views
0

У меня есть шовное веб-приложение. Во время навигации пользователя я хочу, чтобы над пользователем снова появился доступ к странице входа в систему после успешного входа в систему. При успешном входе в систему он перенаправляется на домашнюю страницу home.xhtml. Если после авторизации пользователь снова набирает URL-адрес страницы входа, я хочу перенаправить его автоматически домой.Перенаправление шва с условием, основанным на EL

Я попытался с Seam pages.xml:

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

но оно не»работу. Возможно, потому, что в руководстве Seam указано:

Правила работы, оценивая возвращаемое значение метода действия; невозможно оценить произвольное выражение EL.

Но в моем случае это не связано с каким-либо конкретным действием, пользователь запрашивает страницу входа из уже зарегистрированного сеанса, где он может иметь alredy, совершив много действий, или же никто.

Есть ли у вас какие-либо предложения?

ответ

1

Я должен был решить таким образом:

<page view-id="/common/jsp/login.xhtml" action ="#{myUserBean.isUserAlreadyAuthenticated()}"> 
<navigation> 
    <rule if-outcome="true"> 
     <redirect view-id="/home.xhtml"/> 
    </rule> 
</navigation> 
Смежные вопросы