java - Tomcat 如何检测 JSP 页面并将其转换为 Servlet?

标签 java jsp tomcat

是否仅通过.jsp 的页面扩展名检测到JSP 页面?有没有其他方法可以检测到它?

最佳答案

Tomcat 中的 JSP 页面由特定的 servlet 处理,该 servlet 旨在处理 HTTP 请求中以 .jsp.jspx 终止的所有请求。此配置存在于全局 $CATALINA\conf\web.xml 文件中,您可以在其中找到以下重要行。请注意,这是针对 Tomcat 6 的。

JSP Servlet 注册

<servlet>
    <servlet-name>jsp</servlet-name>
    <servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class>
    <init-param>
        <param-name>fork</param-name>
        <param-value>false</param-value>
    </init-param>
    <init-param>
        <param-name>xpoweredBy</param-name>
        <param-value>false</param-value>
    </init-param>
    <load-on-startup>3</load-on-startup>
</servlet>

JSP Servlet URL 映射

<!-- The mapping for the JSP servlet -->
<servlet-mapping>
    <servlet-name>jsp</servlet-name>
    <url-pattern>*.jsp</url-pattern>
</servlet-mapping>

<servlet-mapping>
    <servlet-name>jsp</servlet-name>
    <url-pattern>*.jspx</url-pattern>
</servlet-mapping>

您可以为尚未映射到其他 servlet 的其他文件扩展名添加更多 URL 映射,以触发 Jasper 编译器,该编译器最终负责将 JSP 文件转换为相应的 Java servlet,然后进行编译(默认使用 Eclipse JDT 编译器)。有关配置流程中某些选项的更多信息,请访问 Tomcat documentation on configuring Jasper。 .

关于java - Tomcat 如何检测 JSP 页面并将其转换为 Servlet?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5892272/

相关文章:

java - Android - 更新大量 TextView

java - 如何从 Tapestry BeanEditForms 获取数据?

java - JSP编译和Weblogic 10.3.4

java - 使用Bean标签

tomcat - spring-websocket 的 RestTemplateXhrTransport 是否有效?

java - web.xml 中前缀为 "javaee:"的标签与不包含前缀 "javaee:"的标签有什么区别?

apache - 在 jetty 中使用 tomcat Trust-store 进行 SSL

java - Tomcat 中的第三方库最佳实践

java - 使用 @Import 时未创建 Bean

java - 无法从结果集中的数据库中获取所有数据