Servlet web.xml welcome-file-list

web.xml文件中的web-app塊的welcome-file-list子元素用於定義歡迎文件列表。 它的子元素是welcome-file,用於定義歡迎文件(即默認打開的頁面)。

歡迎文件是服務器自動調用的文件,如果不指定任何文件名。

默認情況下,服務器按以下順序查找歡迎文件:

  1. web.xml文件中的welcome-file-list指定的文件
  2. index.html
  3. index.html
  4. index.jsp

如果沒有找到這些文件,服務器會報告404錯誤。

如果在web.xml中指定了welcome-file,並且所有文件index.htmlindex.htmlindex.jsp都存在,那麼優先級將轉到welcome-file

如果web.xml文件中不存在welcome-file-list項,那麼優先級到index.html文件,然後是index.html,以及最後是index.jsp文件。

下面來看看一個定義歡迎文件的web.xml文件。

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns="http://xmlns.jcp.org/xml/ns/javaee"
    xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
    id="WebApp_ID" version="3.1">
    <display-name>helloworld</display-name>
    <welcome-file-list>
        <welcome-file>index.html</welcome-file>
        <welcome-file>index.jsp</welcome-file>
        <welcome-file>home.jsp</welcome-file>
    </welcome-file-list>
</web-app>

現在,index.htmlindex.jsphome.jsp將是歡迎文件。

如果有歡迎文件,可以按如下所示的方式調用項目:

http://localhost:8888/helloproject

如上所示,我們並沒有在項目名稱(helloproject)之後指定任何文件名。上面URL訪問相當於以下三個 -

http://localhost:8888/helloproject/index.html
http://localhost:8888/helloproject/index.jsp
http://localhost:8888/helloproject/home.jsp