welcome-file-list 与 url-pattern 到底谁的优先级更高?

104828720
  • 1.4k

我在浏览器中请求的url:

http://localhost:8080

在web.xml中分别配置了一个servlet和<welcome-file-list>,代码如下

<welcome-file-list>
        <welcome-file>index.html</welcome-file>
        <welcome-file>index.jsp</welcome-file>
</welcome-file-list>

<servlet>
    <servlet-name>userservlet</servlet-name>
    <servlet-class>com.tuobida.servlet.UserServlet</servlet-class>
</servlet>
<servlet-mapping>
    <servlet-name>userservlet</servlet-name>
    <url-pattern>*.html</url-pattern>
</servlet-mapping>

问题

我即定义了*.html路径匹配的servlet,但又定义欢迎界面(index.html文件不存在),为什么不执行servlet,而是报404

回复
阅读 1.4k
2 个回答

哥们,能不能尝试过了再来提问题?!!!

你的请求并没有.html,所以不会请求到servlet, servlet是匹配url, 所以即使container去试图找welcome-file也不会再经过servlet处理了。因为welcome-file并不是通过浏览器跳转实现的(区别于response.sendRedirect(xxx)).

你知道吗?

宣传栏