如何从JSP中的servlet响应中读取数据?

时间:2014-03-08 07:33:55

标签: jsp servlets

我有一个生成XML文件的servlet。执行完成后,此servlet将页面重定向到JSP页面之一。我想在这个JSP中获取XML(从servlet生成)并对其进行一些处理。 (我不想将XML用于下载给用户,我想在JSP中读取该XML)。

1 个答案:

答案 0 :(得分:0)

将其添加到过滤器java文件中。

static class MyHttpServletResponseWrapper 
  extends HttpServletResponseWrapper {

  private StringWriter sw = new StringWriter(BUFFER_SIZE);

  public MyHttpServletResponseWrapper(HttpServletResponse response) {
    super(response);
  }

  public PrintWriter getWriter() throws IOException {
    return new PrintWriter(sw);
  }

  public ServletOutputStream getOutputStream() throws IOException {
    throw new UnsupportedOperationException();
  }

  public String toString() {
    return sw.toString();
  }
}

使用以下代码:

HttpServletResponse httpResponse = (HttpServletResponse) response;
MyHttpServletResponseWrapper wrapper = 
  new MyHttpServletResponseWrapper(httpResponse);

chain.doFilter(request, wrapper);

String content = wrapper.toString();

click to refer this site