2014-12-14 4 views
0

Я ищу способ заставить tomcat автоматически отображать index.html для моего приложения в одном из подкаталогов.configure tomcat to serv index.html

Когда я пытаюсь получить доступ к

http://mydomain.tld/myapp/docs 
http://mydomain.tld/myapp/docs/ 

я получаю "404 файл не найден" ошибка. Но когда я нахожу

http://mydomain.tld/myapp/docs/index.html 

это прекрасно работает.

Мой текущий web.xml выглядит следующим образом:

<?xml version="1.0" encoding="UTF-8"?> 
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
          http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> 

    <display-name>Foo</display-name> 
    <description>Bar</description> 

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



    <servlet> 
     <servlet-name>spring</servlet-name> 
     <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> 
     <load-on-startup>1</load-on-startup> 
    </servlet> 

    <servlet-mapping> 
     <servlet-name>spring</servlet-name> 
     <url-pattern>/*</url-pattern> 
    </servlet-mapping> 

    <servlet-mapping> 
     <servlet-name>default</servlet-name> 
     <url-pattern>/docs/*</url-pattern> 
    </servlet-mapping> 

</web-app> 

Что я здесь отсутствует? Почему не будет ловить кота <welcom-file-list />?

Редактировать

Жутко это ведет себя правильно, если я создаю приложение, которое не имеет web.xml или сервлетов (только статический контент). Поэтому tomcat знает, как это сделать.

ответ

0

Вам необходимо включить подкаталог:

<welcome-file>docs/index.html</welcome-file> 
+0

К сожалению, не работает. –

+0

Возможно, он не работает из-за сервлет-отображения на '/ docs/*'. Вам действительно нужно это сопоставление? В чем его цель? –

+0

Не уверен, что я понимаю ваш вопрос там ... '/ /docs /' это URL-адрес, который я хочу предоставить index.html для. Весь вопрос заключается в том, чтобы обеспечить правильное обслуживание. Так это нужно? вкратце? да. –