我在實現我的JSF應用程序的自動登錄功能時遇到了問題,該應用程序正在從JSP &基於servlet的體系結構中獲得保護。根據Cookie的自動登錄jsf
我使用LoginBean支持jsf頁面,並使用構造方法來檢查包含用戶信息的cookie是否存在,以及是否自動打開會話並將用戶重定向到主頁面。
自動登錄永遠不會發生,用戶始終保持在登錄表單的前面。我應該怎麼做才能使它工作?
我在實現我的JSF應用程序的自動登錄功能時遇到了問題,該應用程序正在從JSP &基於servlet的體系結構中獲得保護。根據Cookie的自動登錄jsf
我使用LoginBean支持jsf頁面,並使用構造方法來檢查包含用戶信息的cookie是否存在,以及是否自動打開會話並將用戶重定向到主頁面。
自動登錄永遠不會發生,用戶始終保持在登錄表單的前面。我應該怎麼做才能使它工作?
這是一個應該工作的選項。一旦你確定它們是有效的,你可以這樣做:
final ExternalContext externalContext = FacesContext.getCurrentInstance().getExternalContext();
try {
HttpServletResponse response = (HttpServletResponse) externalContext.getResponse();
if (!response.isCommitted()) {
externalContext.redirect("loggedin.xhtml");
}
} catch (IOException ex) {
// log etc.
}
當你說「自動登錄永不發生」你的意思是說構造函數沒有被調用?然而,調用構造函數 – 2011-06-06 10:36:28
時,如果沒有提交表單,則不會導航到「已登錄」頁面。我試圖實現的是,如果cookie存在,用戶會自動重定向到「登錄」頁面。 – Skyhan 2011-06-06 11:08:15