автоматический вызов основного сервлета через список файлов приветствия - PullRequest
0 голосов
/ 06 ноября 2011

Следующий web.xml не работает:

<servlet-mapping>
    <servlet-name>MyServlet</servlet-name>
    <url-pattern>*.wfn</url-pattern>
</servlet-mapping>

<welcome-file-list>
    <welcome-file>SelectSessionServer.wfn</welcome-file>
</welcome-file-list>

Вместо этого отображается список каталогов.У меня есть файл index.html, и этот файл index.html содержит ссылку на точно такой же URL-адрес SelectSessionServer, и затем он работает правильно.

("it" = Glassfish & Tomcat)

Как получилось?

Я видел этот вопрос ( сервлет как список файлов приветствия в tomcat 7 ), и его ответы, похоже, указывают на то, что моя установка должна работать.

1 Ответ

2 голосов
/ 07 ноября 2011

Убедитесь, что ваше корневое объявление web.xml соответствует сервлету 3.0 для сопоставления сервлета с файлом приветствия.Вы используете Tomcat 7 и (предположительно) Glassfish 3, которые являются контейнерами Servlet 3.0, поэтому вы должны убедиться, что ваш web.xml также объявлен как таковой.

<web-app 
    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_3_0.xsd"
    version="3.0">

Это также даст дополнительные преимущества новых функций Servlet 3.0, таких как @WebServlet аннотация и т. Д.

...