2

我在从 JSP 页面返回对 AJAX 的响应时遇到问题。

我试过这段代码:

response.getWriter().print(result);
4

3 回答 3

3

您要返回的结果类型是什么?如果是纯文本或html,则在写出之前设置内容类型。

response.setContentType("text/html");  
response.getWriter().write(result);

如果您尝试返回其他 java 对象,如 list 或 map,则应将其转换为 json 对象并相应地设置内容类型,

response.setContentType("application/json");
response.getWriter().write(json); 
于 2013-01-19T11:06:31.080 回答
2

我用于将 XML 内容从 JSP 返回到 Ajax 的方法:

<%@ page contentType="text/xml;charset=UTF-8"%>
<%
[....i did my stuff here ....]
  response.getWriter().write(res.toString());  
%>

奇迹般有效!

我没有使用 XML 以外的其他响应,但我想,如果你设置contentType得当,它会是相似的。

于 2013-01-19T10:59:10.097 回答
0

如果您尝试向 AJAX 查询返回 HTML 响应,那么您需要编写“常规”JSP,以便在您调用它时生成 HTM 页面。

如果您尝试返回非 HTML 响应,那么我认为使用 Servlet 会更好。

于 2013-01-19T10:57:37.293 回答