1
我有一個JSF應用程序和一個特定的頁面來顯示/編輯我的系統中的特定實體的細節(吸引力)。我有JSF頁面它接受attractionId作爲頁面參數如下:JSF 2.0從操作方法返回null不保留原始請求參數
<p:commandButton styleClass="button"
ajax="false"
value="Update Attraction"
action="#{attractionsBean.updateAttraction()}" />
在updateAttraction方法,通常爲:
<f:metadata>
<f:viewParam name="attractionId" value="#{attractionsBean.attractionId}" required="true" />
</f:metadata>
提交更改到吸引我有這個命令按鈕當JSF返回null時,用戶被重定向到顯示任何可能已經創建的消息的同一頁面。但是,由於該頁面需要一個attractionId,因此它會給出一個驗證錯誤,因爲它不會自動添加原始請求參數,因此它是null。通常我這樣做如下:
if (FacesContext.getCurrentInstance().getMessageList().size() > 0) {
return null;
}
但是,這不會發回原始參數來顯示指定的吸引力。
任何人都可以建議一個乾淨的解決方案嗎?
謝謝!