我有一個p:dataTable和一些控件來改變它的內容,如頁碼,排序和過濾器參數。控件調用AJAX交互,以便每次更改都會向後端調用SQL查詢,但只更新客戶端瀏覽器中的表。這就是它應該的方式,對吧?如何將JSF Ajax與可書寫視圖結合使用?
我無法弄清楚是製作視圖書籤的最佳做法。這是很容易獲得的書籤參數爲支持bean如:
<f:metadata>
<f:viewParam name="orderNo" value="#{bean.orderNo}" />
<f:viewParam name="sortOrder" value="#{bean.sortOrder}" />
<f:viewParam name="showOpenItems" value="#{bean.showOpenItems}" />
<f:viewParam name="page" value="#{bean.page}" />
<f:viewParam name="pageSize" vlaue="#{bean.pageSize}" />
</f:metadata>
所以說,我想補充一個單選按鈕控制來改變中將sortOrder。這可能是這樣的:
<p:selectOneRadio value="#{bean.sortOrder}">
<p:ajax update="@form" />
<f:selectItem itemLabel="xxx" itemValue="1" />
(etc)
</p:selectOneRadio>
第一個問題:當這個支持AJAX控制發射有沒有什麼辦法來保護其它參數如orderNo不用藉助ViewScoped豆?
第二個問題:如何獲取瀏覽器的URL欄進行更新,以便用戶在頁面上書籤時,所有當前表查詢參數都保留下來?
非常感謝您的幫助。