java - 星号(通配符匹配)和 url-pattern

标签 java jakarta-ee servlets

我想要一个针对特定 URL 的“显式”servlet 和一个默认(某种包罗万象的)servlet 来处理所有其他 URL。所以我创建了这样的 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 有什么问题吗?请指教。

最佳答案

改变

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

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

参见 this获取更多信息。

关于java - 星号(通配符匹配)和 url-pattern,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10023442/

相关文章:

jsp - Tomcat 服务器向 servlet 发出 3 个请求

java - Eclipse导入莫名其妙没有解决

java - 将 Javascript 库包含到 Wicket 面板

java - 使用部署在其中的 Web 应用程序关闭 tomcat

eclipse - 在 Tomcat 服务器实例中部署 Spring 应用程序

java - 单击提交按钮后如何运行多个 servlet?

css - NetBeans 看不到 style.css

java - 奇怪的字符串错误,请客气,java新手

java - Linux 中的 Sqlite java.lang.UnsatisfiedLinkError

java - 行业标准 Java(Java EE、Java SE 或 Spring)应用程序源代码示例