2010-03-21 31 views
1

該方法可以工作嗎?如何將查詢字符串從託管bean追加到url? JSF

public String sayHello(){ 
    return "Hello.jsp?name=" + "laala"; 
} 

我無法訪問,使用上述方法查詢字符串。我嘗試了$ {param.name}以及request.getParameter(「name」)。他們都返回null。請幫忙!

回答

4

要麼火redirect ..

public void sayHello(){ 
    ExternalContext externalContext = FacesContext.getCurrentInstance().getExternalContext(); 
    externalContext.redirect("/Hello.jsp?name=" + "laala"); 
} 

..或者,如果你已經在JSF2,然後只需在導航的情況下將它們定義:

<to-view-id>/Hello.jsp?name=#{bean.property}</to-view-id> 

(雖然.jsp文件擴展更少或多個提示噸帽子你不JSF2上尚)

當使用JSF2導航的情況下,如果你想在新的URL得到體現在瀏覽器地址欄中,你需要添加一個<redirect/>項,否則將只是做一個轉發

+0

您也可以使用' 2012-07-06 03:03:18

+0

@John:這不完全是OP要求的。 – BalusC 2012-07-06 04:54:06

+0

這是真@BalusC,但結果將是一個查詢字符串,其中包括視圖參數../Hello.jsp?name=something – 2012-07-06 16:51:43