2015-09-02 40 views
7

我已經在Eclipse Luna中編寫了一個簡單的動態Web項目。在web.xml頁面中,我刪除了默認的welcome-file-list標記。即使未定義<welcome-file-list>,index.jsp文件也會打開

<?xml version="1.0" encoding="UTF-8"?> 
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0"> 
    <display-name>indextest</display-name> 
</web-app> 

但是URL http://localhost:8080/indextest/仍然引導到index.jsp下的 'WEB-INF' 我從web.xml移除標籤welcome-file-list即使經過。它如何指向index.jsp頁雖然welcome-file-list不在web.xml

+0

你在使用什麼服務器? – Paolof76

+0

可能它存儲在你瀏覽器的cookies中,只是刪除它重試它。或者只是清理你的tomcat工作目錄,這也會造成問題。 – SaviNuclear

+0

我正在使用Tomcat v7.0 >>> @ Paolof76 –

回答

4

如果您正在使用一個Tomcat 7實例,是沒有指定welcome-file-list,容器(tomcat)正在查看他的默認值,即在tomcat實例的/conf/web.xml中。

這些都是行:

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

我建議不要更改默認tomcat的任何東西,因爲你的web應用程序不應依賴運行它的容器上。相反,你應該在你自己的web.xml中定義你自己的welcome-file-list。 希望這有助於!

4

如果再提供無任歡迎列表中的容器會嘗試加載定義的順序以下文件:

  • 的index.htm
  • 的index.jsp
    1. 的index.html

      更新: 關於tomcat

      如果沒有提供web.xml e應用程序中,Tomcat的默認web.xml($ CATALINA_HOME/conf/web.xml)被提供給應用程序。這個部署描述符有下面幾行:這就是爲什麼index.jsp的默認顯示

      的更新源

      <!-- --> 
      <!-- If you define welcome files in your own application's web.xml --> 
      <!-- deployment descriptor, that list *replaces* the list configured --> 
      <!-- here, so be sure to include any of the default values that you wish --> 
      <!-- to use within your application. --> 
      
      <welcome-file-list> 
          <welcome-file>index.html</welcome-file> 
          <welcome-file>index.htm</welcome-file>  
          <welcome-file>index.jsp</welcome-file> 
      </welcome-file-list> 
      

      https://stackoverflow.com/a/17247947/1129313

    0

    如果更改文件名,則默認文件將調用index.jsp然後它不會找到index.jsp,您可以獲得預期的結果。

    相關問題