2016-05-06 43 views
0

你好我正在一個java網頁上工作,我有我所有的類和xhtml文件。 我可以創建cookie,但是當頁面加載時我無法檢查它們。我有一個幫助獲取Cookie功能是:將java cookie嵌入到html

public Cookie getCookie(String name) 

,如果沒有的cookie返回null,我想寫

if(user.getCookie==null) 
goto login.xhtml 

基本上這就是我試圖做的。我如何將這段代碼嵌入到html文件中?

並在我的註銷中,我如何刪除所有cookie?

+0

您正在使用的JSF版本? –

回答

0

如果您使用的是JSF 2.x.您可以使用PreRenderView標記在頁面加載到JSF中之前執行方法,以檢查在呈現頁面之前用戶cookie是否爲空。每個HTTP請求都會調用preRenderView事件。 您可以使用PreRenderViewEvent的象下面這樣:

<f:metadata> 
    <f:event type="preRenderView" listener="#{cookiesChecker.check}" /> 
</f:metadata> 

這裏是聽者

@ManagedBean 
@RequestScoped 
public class cookiesChecker{ 

    public void check() { 
     if(user.getCookie==null) 
     goto login.xhtml 
    } 

    // ... 
} 

更多信息:

When to use f:viewAction/preRenderView versus PostConstruct?

+0

非常感謝! – solohane

+0

@ osumatu歡迎您 –