Читать «Java 7 (Наиболее полное руководство)» онлайн - страница 407

Ильдар Шаукатович Хабибуллин

-->

<servlet>

<servlet-name>invoker</servlet-name> <servlet-class>

org.apache.tomcat.servlets.InvokerServlet

</servlet-class>

<init-param>

<param-name>debug</param-name>

<param-value>0</param-value>

</init-param>

<load-on-startup>2</load-on-startup>

</servlet>

<!--

Все запросы к страницам JSP вначале обрабатываются сервлетом JspServlet. Ему дано имя "jsp".

-->

<servlet>

<servlet-name>j sp</servlet-name>

<servlet-class>

</servlet-class>

<!— uncomment the following to use Jikes for JSP compilation Уберите комментарий, если вы используете компилятор jikes. <init-param>

<param-name>j spCompilerPlugin</param-name>

<pa ram-value>

org.apache.j asper.compiler.JikesJavaCompiler

</param-value>

</init-param>

-->

<load-on-startup>

-2147483646

</load-on-startup>

</servlet>

<!--

Некоторым путям-псевдонимам сопоставляется сервлет, который вызывается при указании в строке URL этого пути. Путь отсчитывается относительно корневого каталога контейнера, чаще всего это public html или webapps.

Если в адресе URL указан каталог servlet, то вызывается сервлет с именем "invoker", т. е. InvokerServlet.

-->

<servlet-mapping>

<servlet-name>invoker</servlet-name> <url-pattern>/servlet/*</url-pattern>

</servlet-mapping>

<!--

Если в адресе указан путь к странице JSP, то вначале вызывается сервлет с именем "jsp", т. е. сервлет JspServlet.

-->

<servlet-mapping>

<servlet-name>j sp</servlet-name>

<url-pattern>*.j sp</url-pattern>

</servlet-mapping>

<session-config>

<session-timeout>30</session-timeout> </session-config>

<!--

Ниже идет длинный список соответствий расширений имен файлов и MIME-типов содержимого этих файлов.

-->

<mime-mapping>

<extension>txt</extension>

<mime-type>text/plain</mime-type>

</mime-mapp i ng>

<mime-mapping>

<extension>html</extension>

<mime-type>text/html</mime-type>

</mime-mapp i ng>

<mime-mapping>

<extension>htm</extension>

<mime-type>text/html</mime-type>

</mime-mapp i ng>

<mime-mapping>

<extension>gif</extension>

<mime-type>image/gif</mime-type>

</mime-mapp i ng>

<!--

И так далее.

Наконец, идет список файлов, которые посылаются клиенту при обращении только к каталогу без указания ресурса.

-->

<welcome-file-list>

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

</web-app>

Как видите, конфигурационный файл web.xml весьма объемен. В большом Web-приложении он становится сложным и трудно читаемым. Начиная с версии Servlet 3.0, его можно составить из нескольких файлов, содержащих отдельные фрагменты с описаниями отдельных сервлетов и других ресурсов. Каждый фрагмент, в отличие от основного файла web.xml, обрамляется XML-элементом <web-fragment>, а не элементом <web-app>. Файл с фрагментом должен называться web-fragmentxml и располагаться в каталоге META-INF. Порядок подключения фрагментов указывается элементами XML в каждом фрагменте или в файле web.xml.