2012-08-12 37 views
1

如何使用jsf創建簡單的重定向?如何使用JSF創建簡單的重定向?

我想:

<h:form> 
     <h:commandButton action="www.google.de" value="go to google" /> 
    </h:form> 

但是,當我按一下按鈕,我只是停留在索引頁上。什麼都沒發生! 這裏有什麼問題?

+0

JSF的哪個版本? – kosa 2012-08-12 17:29:22

回答

3

JSF在這裏絕對有必要嗎?你似乎不需要向你方提交任何東西。只需使用純HTML。

<form action="http://www.google.de"> 
    <input type="submit" value="Go to Google" /> 
</form> 

請注意,URL到外部網站必須包括計劃(http://部分),否則就只是相對於當前的請求URI如http://example.com/context/www.google.de提交。

如果您確實需要提交給您的一方,例如要預處理和/或記錄某些內容,則可以在操作方法中使用ExternalContext#redirect()

<h:form> 
    <h:commandButton value="Go to Google" action="#{bean.submit}" /> 
</h:form> 

public void submit() throws IOException { 
    // ... 

    FacesContext.getCurrentInstance().getExternalContext().redirect("http://www.google.de"); 
} 
0

您可以使用:

<h:commandButton value="Go to Google" type="button" onclick="window.location.href = 'http://www.google.de';" /> 

無需一種形式。