微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Spring MVC – AJAX-JSON响应包含渲染的JSP视图

我需要我的控制器返回包含更新的HTML代码的AJAX JSON响应.

通过呈现JSP视图来创建更新的HTML代码.

例如:
JSP:

<tr>
<td>${data1}</td>
<td>${data2}</td>
</tr>

JSON响应:

{"columns" : "2", "rows":"1", "data":rendered view}

目前我正在尝试用“我自己的”输出流创建一个虚拟响应,并将渲染的视图内容放在json响应中,但没有运气.

除了我不能让这个解决方案工作的事实,它感觉不对.
有关正确方法的任何提示吗?

谢谢,
大利

解决方法:

如果要捕获的视图位于/WEB-INF/views/my.jsp中,则调用

request.getRequestdispatcher("/WEB-INF/views/my.jsp").include(request, myResponse);    

其中myResponse是您创建的HttpServletResponseWrapper,或者是Spring MockHttpServletResponse.在后一种情况下,您可以从getContentAsstring()获取渲染输出.

编辑如下

我遇到了另一个关于捕获servlet响应的SO question,这些响应有一些指向你可以使用的HttpServletResponseWrappers的指针.

两个看起来很好的实现:

> DWR SwallowingHttpServletResponse
> Sitemesh PageResponseWrapper

请享用,

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐