[英]In a JSF 2.0 app, how can i get a huge array of data into my javascript code from the ManagedBean?
我有一個JSF 2.0應用程序,需要從服務器端ManagedBean獲取大量數據以加載到大約7000個javascript對象的多維數組中以進行圖形顯示。 最終,這些對象將由應用程序編輯,並返回到服務器以存儲在它們來自的數據庫中,因此需要雙向傳輸。
通過隱藏的h:inputText項獲取和設置數據的常用方法將無法處理這種體積。 我也嘗試從客戶端代碼進行ajax調用,但是我無法弄清楚要使用哪個URL來訪問會話的ManagedBean。 看來這應該是可能的...
您可以使用servlet通過jquery ajax檢索和處理數據
Servlet類:
@WebServlet("/jsonservlet/*")
public class JSONServlet extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException{
//use any json library ( I recommended gson library)
response.setContentType("application/json");
response.getWriter().write(jsonData)
}
}
現在您可以使用jquery對該servlet進行ajax調用,以檢索json返回的數據
$.ajax({
url: "jsonservlet",
type: 'GET',
dataType: 'json',
contentType: 'application/json',
mimeType: 'application/json',
success: function (data) {
//here you can populate your javascript array
},
error:function(data,status,er) {
alert("error: "+data+" status: "+status+" er:"+er);
}
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.