#seam3
#seam3
Вопрос:
У меня есть пользовательский аутентификатор, и я хочу перенаправить на домашнюю страницу после успешной аутентификации в seam 3. Как я могу это сделать??
Ответ №1:
Есть несколько способов сделать это.
Самый простой способ — return "/home.xhtml";
в вашем действии входа в систему.
Комментарии:
1. Есть ли способ с помощью seam security перенаправить, если вы не вошли в систему как JASS
Ответ №2:
Другой способ — использовать правило навигации в faces-config.xml:
<navigation-rule>
<from-view-id>/loginPage.xhtml</from-view-id>
<navigation-case>
<from-action>#{authBean.login}</from-action>
<from-outcome>success</from-outcome>
<to-view-id>/homePage.xhtml</to-view-id>
<redirect/>
</navigation-case>
<navigation-case>
<from-action>#{authBean.login}</from-action>
<from-outcome>fail</from-outcome>
<to-view-id>/loginPage.xhtml</to-view-id>
<redirect/>
</navigation-case>
</navigation-rule>
Комментарии:
1. да, я поместил это в правило навигации, например <из-действия>#{идентификатор. login}</from-action><form-action>#{true}</form-action><to-view-id>/home.xhtml</to-view-id> работает нормально, но теперь, как проверить, входил пользователь в систему или нет, перед отображением представления с помощью seam security
2. Для просмотра вы можете использовать что-то вроде этого, например: <h:DataTable rendered=»#{identity. LoggedIn}» …… >….. Если вы хотите ограничить методы вызова только зарегистрированными пользователями, вы можете добавить аннотацию @LoggedIn к компонентам или методам