如何删除JSP页面中的所有“\ n”? (使用javax.servlet.Filter?)

时间:2010-10-28 11:37:39

标签: java jsp servlets servlet-filters

我想删除JSP页面输出的所有“\ n”。

我想我应该为此使用过滤器。

但我不知道该怎么做

public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain)throws IOException, ServletException {
      //how to remove all "\n" for output?
}

任何想法?谢谢你的帮助:)

2 个答案:

答案 0 :(得分:5)

BalusC有一个帖子显示这样的过滤器。 Check here

This question显示了修剪空格的其他选项。

答案 1 :(得分:2)

要访问资源生成的响应,需要包装HttpServletResponse对象。即更改传递给doFilter()的响应对象 FilterChain对象的方法。自定义包装器可以缓冲资源(JSP / Servlet)的所有输出,可以在将其发送回客户端之前对其进行访问和更改。 您可以使用简单的String.replaceAll()方法替换所有\ n的。

您可以使用HttpServletResponseWrapper类来包装响应对象。看看过滤器tutorialThis book还提供了有关如何修改过滤器响应的明确说明。见本书第9.9节。