1

我正在启动一个包含许多“文件”的项目(如 Web 服务器 .html 或 jsp 文件)。例如,这些文件中的每一个都将在文件中嵌入“JSP”;

你好 <%="John Doe" %>

然后,我想通过“JSP 编译器”以编程方式发送此文件,然后获取输出文件。

我查看了 Tomcats JSPServlet 并走到了死胡同,因为似乎无法从代码中获取 Servlet 对象。我还下载了 Tomcat 中的 Apache Jasper 代码,以了解 JSPServlet 正在做什么,但这似乎是一条漫长的道路。

有没有人有任何建议或想法?

我知道 JSP 是面向网络的,但这对我有用。

4

4 回答 4

2

回答我自己的问题:)

我创建了实现 tomcat 的连接器接口的类,它允许我使用 Tomcat 提供的所有东西,但有我自己的入口点。

于 2011-10-15T05:56:48.693 回答
0

那是漫长的路线。您是否正在寻找一种使用模板生成文件的方法?在这种情况下,Velocity 或 Freemarker 可能是更好的路线。特别是如果您不想生成 html。

于 2010-06-24T21:57:10.030 回答
0

你只是想得到它的输出?最简单的方法是安装一个 servletcontainer,部署 webapp 并使用它URL#openStream()来获取InputStream它。

InputStream response = new URL("http://localhost/context/page.jsp").openStream();
于 2010-06-24T23:37:24.673 回答
0

Tomcat 将为 Web 应用程序编译 JSP 文件并将其放置在每个 Web 应用程序的特殊文件夹中。

您可以做的是编写一个脚本,以定期将用户发送的 jsp 文件转储到您的 Tomcat webapps 目录中的 What.war 目录中。

这样 Tomcat 会自动编译 JSP 并给你输出 HttpServlet 代码,

然后,您可以检查 Tomcat 日志以了解每个 JSP 文件的任何编译异常。

查看这篇关于在Ant中使用 Jasper 编译器和Apache Web 站点进行此操作的文章。

于 2010-09-30T13:20:04.713 回答