Tomcat如何运行没有做mapping的servlet (转)
Tomcat如何运行没有做mapping的servletTomcat有一个类org.apache.catalina.servlets.InvokerServlet,它负责处理没有做ServletMapping的那些Servlet.但是,在tomcat安装目录的conf/web.xml中,系统默认情况下把org.apache.catalina.servlets.InvokerServlet的注册与地址映射注释了.
<!--
<servlet>
<servlet-name>invoker</servlet-name>
<servlet-class>
org.apache.catalina.servlets.InvokerServlet
</servlet-class>
<init-param>
<param-name>debug</param-name>
<param-value>0</param-value>
</init-param>
<load-on-startup>2</load-on-startup>
</servlet>
-->
<!--
<servlet-mapping>
<servlet-name>invoker</servlet-name>
<url-pattern>/servlet/*</url-pattern>
</servlet-mapping>
-->
所以,去掉注释符,重新启动一次Tomcat,就可以按照http://localhost:8080/你的应用路径(path)/servlet/youservlet格式访问你没有进行地址映射的servlet了.
如果在在启动Tomcat时报错,说
org.apache.catalina.servlets.InvokerServletisprivilegedandcannotbeloadedbythiswebapplication.
使tomcat应用无法加载.可以按照以下解决办法处理:
在conf/context.xml中的<Context>标签中添加参数privileged="true",即将其修改为
<Contextreloadable="true"privileged="true">
重启Tomcat.
本文来自CSDN博客,转载请标明出处