1

我想要一个用于特定 URL 的“显式”servlet 和一个用于处理所有其他 URL 的默认(某种包罗万象的)servlet。所以我创建了这样的 web.xml 文件:

  <servlet>
    <servlet-name>My myindex.html servlet</servlet-name>
    <servlet-class>in.shakir.web.MyIndexServlet</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>My myindex.html servlet</servlet-name>
    <url-pattern>/myindex.html</url-pattern>
  </servlet-mapping>

  <servlet>
     <servlet-name>My all others servlet</servlet-name>
     <servlet-class>in.shakir.web.MyHandlerServlet</servlet-class>
  </servlet>
  <servlet-mapping>
     <servlet-name>My all others servlet</servlet-name>
     <url-pattern>*</url-pattern>
  </servlet-mapping>

但是它不工作(即使是 /myindex.html 也出现 404 错误)我使用的是 Tomcat 7。

但是,如果我从 web.xml 中删除第二个(默认或全部)部分,则 myindex.html 可以正常工作。那么我的 url-pattern 有什么问题?请指教。

4

1 回答 1

3

改变

<url-pattern>*</url-pattern>

<url-pattern>/*</url-pattern>

看到这个了解更多信息。

于 2012-04-05T06:10:24.353 回答