【问题标题】:Render a jsp page from code and get the rendered html output as a string从代码中渲染一个 jsp 页面,并将渲染后的 html 输出作为字符串获取
【发布时间】:2011-11-15 10:54:29
【问题描述】:

让 JSP 页面呈现,然后将呈现的 html 内容作为字符串获取的最简单方法是什么?

【问题讨论】:

标签: java html string jsp


【解决方案1】:

有这个教程,用代码解释每一步:

http://valotas.com/get-output-of-jsp-or-servlet-response/

当 JSP 不能通过 URL 直接访问时,这样做有好处。

【讨论】:

  • 此外,您可能希望在示例中覆盖 setContentType(String x)。否则 forward() 可能会根据您的 servlet 响应更改它。
【解决方案2】:

您应该为HttpServletResponseWriter 提供自己的包装器(通过HttpServletResponseWrapperFilter 中),并且每次写信给该作者时,也将存储在StringBuilder 中。

这只是代码的草图,有足够数量的示例,但主要步骤是:

  • 创建过滤器
  • 包装 PrintWriter 以使其将每次写入存储在构建器中
  • 扩展HttpServletResponseWrapper 并使其返回作者包装器
  • 创建chain.doFilter(request, new HttpServletResponseWrapper(response))

【讨论】:

    【解决方案3】:

    使用java.net.URLjava.net.URLConnection 类方法或JSTL <c:import/>

    【讨论】:

      猜你喜欢
      • 2018-03-14
      • 1970-01-01
      • 1970-01-01
      • 2018-11-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-01-30
      相关资源
      最近更新 更多