我需要我的控制器返回包含更新的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] 举报,一经查实,本站将立刻删除。