java - 从我的应用程序读取 jsp 页面输出

标签 java jsp

我想从我的应用程序中读取 jsp 页面并将其保存到文件中 - 它是输出,而不是代码本身。另外,我的应用程序具有基本身份验证(用户名+密码)。

如果它是一个 Servlet,我可以访问它的 doGet 方法。

我发现的一个解决方案是 this - 打开 URL 连接,提供身份验证详细信息并读取流。

我想知道是否还有另一种选择,也许可以访问 Web 容器中生成的 Servlet,然后使用反射来调用 doGet 类。

最佳答案

您可以预编译 JSP,然后调用 servlet(甚至不必使用反射)。 如果您尝试在没有预编译的情况下调用 JSP 的 servlet,那么它可能还不会退出(因为通常服务器仅在第一次调用 JSP 后才编译 JSP)。

要预编译 JSP,请检查您的 Web 服务器文档。

我个人认为你最好使用 URL 连接。预编译 JSP 不可移植(因为您需要为每个 Web 服务器以不同的方式进行预编译)。

编辑

您还可以将 RequestDispatcher.include() 方法与包装的响应对象一起使用,如 this answer 中所述。 .

关于java - 从我的应用程序读取 jsp 页面输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16332174/

相关文章:

java - 正确使用 LabelValueBean

html - 如何在 Spring MVC 中将 HTML 文本发送到模型

java - KafkaStreams serde异常

java - PostgreSQL/Clojure 的驱动程序问题

java - 在mozilla中加载PApplet时出现NoClassDefFoundError异常

java - 如果通过 Windows 任务栏强制关闭窗口则阻止窗口关闭 -> 关闭

java - 模拟器中 Code-Name-One 浏览器组件的奇怪行为

java - 使用 Struts2 突出显示表格中的行

html - &#160 在 HTML 上显示为 '?' 问号

java - JSP Scriptlet中文字符串比较