2012-08-07 96 views
3

上了車JSF 2導航機制一個很簡單的問題:JSF commandLink沒有更新網址正確

我有兩個觀點,稱之爲「ProductEdit」和「產品列表」,以請求範圍支持豆(我不認爲無論如何,這是相關的)。我在「ProductEdit」視圖

  <h:commandLink action="#{product.update('')}"> 
       <h:outputText value="Update And Return"></h:outputText> 
       <f:param name="pageNo" value="#{productlist.pageNo}" /> 
      </h:commandLink> 

以下行當用戶點擊「更新與迴歸」中的「ProductEdit」視圖鏈接,則執行指定的動作(在JSF相當標準)和結果它的'ProductList'視圖和用戶被引導到頁面沒有問題。然而,儘管顯示的視圖是'ProductList'視圖,但該頁面的URL仍然保留在我的瀏覽器中的'ProductEdit'中。

當然URL必須更新,我做錯了什麼?

Hoping BalusC現在在線!

回答

4

對不起,我以前的答案,你可以添加"?faces-redirect=true"在你的行動返回的鏈接的結束。或者,如果您要使用PrimeFaces,只需將參數ajax設置爲false即可。

編輯

public String update() { 
    return "index?faces-redirect=true"; 
} 

我將借用BalusCs answers之一 - 在這裏你可以看到一些方法如何做到這一點。

+0

但是,這不會執行我需要運行的操作product.update('')! – ManiP 2012-08-07 13:34:04

+0

我在哪裏添加到?即將「?faces-redirect = true」追加到視圖名稱的位置?不使用PF。 – ManiP 2012-08-07 13:39:49

+0

不,在更新方法中。這個方法必須返回String(或null或者是void,它是相同的),它會將你重定向到某處(比如說「index」),所以只需將它附加在這裏 - return「index?faces-redirect = true」 – 2012-08-07 13:40:55