我寫了一個簡單的servlet來處理Ajax請求。在服務器端,調用doPost
,但我在響應對象中設置的數據不反映在客戶端上。 (其實,根據Firebug,我沒有在客戶端上得到任何東西)。我正在使用jQuery來處理Ajax。通過Ajax沒有servlet響應
客戶端代碼:
$.post(
'/mapped/url?param=' + $('#eleId').val(),
function(data){
alert(data);
},
"xml"
);
在服務器上:
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
System.out.println("!!!In post!!!!");
// some calculations go here
response.setContentType("application/xml");
response.setHeader("Cache-Control", "no-cache");
response.getWriter().write("<data><param number=\"\"></param></data>");
response.setStatus(HttpServletResponse.SC_OK);
}
提前感謝!
讀取服務器日誌,並從`web.xml`刪除任何``排除一個又一個。請注意,當響應正文已經提交時,不能設置響應狀態。你應該事先做好,但仍然是,默認情況下,設置狀態200已經完成。只要刪除該行。 –
BalusC
2011-01-20 20:35:22