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

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

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

JSP Servlet注册

  jsp org.apache.jasper.servlet.JspServlet  fork false   xpoweredBy false  3  

JSP Servlet URL映射

   jsp *.jsp   jsp *.jspx  

您可以为尚未映射到其他servlet的其他文件扩展添加更多URL映射,以便触发Jasper编译器,最终负责将JSP文件转换为相应的Java servlet,然后编译(使用Eclipse JDT编译器,默认情况下)。 有关配置过程中某些选项的更多信息,请参阅有关配置Jasper的Tomcat文档 。

以下是$ TOMCAT_HOME / conf / web.xml中Builted Servlet Definitions部分的简要介绍

 The JSP page compiler and execution servlet, which is the mechanism used by Tomcat to support JSP pages. Traditionally, this servlet is mapped to the URL pattern "*.jsp". 

JSP页面检测是通过servlet映射($ TOMCAT_HOME / conf / web.xml中的Built In Servlet Mappings部分)完成的:

   jsp *.jsp   jsp *.jspx