我遇到了一个问题,Tomcat将额外的路径信息作为servlet名称的一部分。这打破了我们webapp中的一系列RESTFul功能(我们使用额外的路径信息,而不是?name=value对来创建爬虫友好的链接)。
它以前工作正常,但在添加显式映射并删除
Invoker
http://mydomain.com/servlet/MyServlet/param1/param2/param3
MyServlet
用于正确调用,并且返回了“/param1/param2/param3”
getPathInfo()
上
HttpServletRequest
现在,Tomcat似乎正在尝试将MyServlet/param1/param2/param3加载为servlet:
[23/Sep/2008:16:44:23-0700]“获得
/servlet/MyServlet/param1/param2/param3
以下是它们在web.xml中的定义和映射方式,只需点击
"
http://mydomain.com/servlet/MyServlet
“很好。
<servlet>
<servlet-name>MyServlet</servlet-name>
<servlet-class>com.myclass.etcetera.MyServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>MyServlet</servlet-name>
<url-pattern>/servlet/MyServlet</url-pattern>
</servlet-mapping>