2013-08-07 229 views
-2

我想調用一個servlet。 servlet將從數據庫中獲取數據並將其保存在請求中。結果我需要使用jstl標籤在some.jsp中顯示。通過使用jquery ajax調用servlet在jsp中顯示結果?

$('#ownForm #myButton').click(function() { 

     $.ajax({ 
      type: "GET", 
      url: "./controller", 
      success: function(msg) { 
       //Todo 
      }, 
      error: function(ob,errStr) { 
       //Todo 

      } 
     }); 

     }); 

在servlet的,我有下面的代碼:

//keep database returned list in request 
request.setAttribute("myresult", result); 
request.getRequestDispatcher("/WEB-INF/some.jsp").forward(request, response); 

請幫助我,我怎麼能實現呢?

+0

問題是什麼?你不知道如何到達jsp?你不知道如何使用jstl-tags? – Gunslinger

+0

問題是不知道如何達到jsp ..謝謝 – user1016403

+0

你在Ajax調用的「成功」中獲得了什麼。它是什麼數據? –

回答

0

忽略jsp。使用FlexJson將結果直接從結果對象序列化爲json。在響應中將序列化結果打印到輸出流中。

事情是這樣的:

response.setContentType("application/json"); 
response.setCharacterEncoding("UTF-8"); 
JSONSerializer serializer = new JSONSerializer(); 
serializer.exclude("*.class"); //reduce clutter in your output as you see fit 
serializer.serialize(objectToSerialize, response.getWriter()); 

使用jQuery,解析這個JSON和行爲的結果。

+0

Gunslinger,謝謝你的回覆。但是我從數據庫中得到需要在jsp表中顯示的對象列表。 – user1016403

+0

將這個列表返回爲json應該不成問題。 – Gunslinger