3
下面是一個例子按鈕,可以拋出異常:號碼:的commandButton不重定向時的ExternalContext#重定向()被調用
<h:commandButton value="save" update=":formTable:tableData">
<f:setPropertyActionListener value="BTN_ONE"
target="#{tamplateTableBean.buttonSelected}" />
</h:commandButton>
在我ExceptionHandler
我:
FacesContext.getCurrentInstance().getExternalContext().redirect("error.xhtml");
當我使用<h:commandButton>
(如上例)併發生異常,然後執行重定向並顯示錯誤頁面。 當我使用<p:commandButton>
時,則不會發生重定向(即使執行了行redirect("error.xhtml")
),並且它將保持在同一頁面上,就像沒有任何事情發生一樣。我的ExceptionHandler
中捕獲到異常,但不顯示JSF錯誤頁面。
這是如何造成的,我該如何解決?
技術的區別是,PrimeFaces按鈕發送一個ajax請求。 http://stackoverflow.com/questions/10449862/what-is-the-correct-way-to-deal-with-jsf-2-0-exceptions-for-ajaxified-components – BalusC 2013-05-09 13:59:47