我有一个应用程序使用Spring MVC 3.1.3和使用Dojo 1.4开发的UI。 该应用程序有哪些处理通过上传二进制文件数控制器dojo.io.iframe.send
。 控制器发送,其具有与所包围的JSON响应
<html><body><textarea>{my json response}</textarea></body></html>.
我实现了在web.xml中定义自定义过滤器:
<filter>
<filter-name>dojoIframeFilter</filter-name>
<filter-class>com.app.web.MultipartAjaxFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>dojoIframeFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
该过滤器的doFilter有这种行为,取自http://www.oracle.com/technetwork/java/filters-137243.html
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
if (request.getContentType() != null
&& request.getContentType().contains("multipart/form-data")) {
CharResponseWrapper wrapper = new CharResponseWrapper((HttpServletResponse) response);
chain.doFilter(request, wrapper);
log.info(wrapper.toString());
//Modify response here
}
else {
chain.doFilter(request, response);
}
}
该包装的输出是空的。 我也试过很多其他组合,如将定制过滤器弹簧的调度的servlet,用的doFilter没有一个作品里面,如果块做了。 我也试着写一个Spring拦截器也失败了。 有谁请提出任何其他的想法?
提前致谢。
更新:我禁用春天的安全性和使用普通Spring MVC的测试,但问题依然存在。 我已经修改了标题和描述的问题。