Что такое файл web.xml и что я могу сделать с ним?
web.xml Элементы дескриптора развертывания в Oracle BEA WebLogic Server 8.1 Документация в значительной степени суммирует каждый элемент в файле web.xml. Но мне также интересно узнать о нижеследующих пунктах:
- Есть ли какой-либо параметр конфигурации, который следует избегать, как чума?
- Любые параметры, связанные с производительностью или использованием памяти?
- Связанный с безопасностью риск из-за общей неправильной конфигурации?
Что еще я должен знать о web.xml помимо имен элементов и их использования?
Ответы
Ответ 1
Что такое файл web.xml и что все это можно сделать с ним?
Файл /WEB-INF/web.xml
- это дескриптор развертывания веб-приложения вашего приложения. Этот файл является XML-документом, который определяет все о вашем приложении, которое должен знать сервер (за исключением пути к контексту, который назначается Application Deployer и администратором при развертывании приложения): сервлеты и другие компоненты, такие как фильтры или прослушиватели, инициализация параметры, ограничения безопасности, связанные с контейнером, ресурсы, страницы приветствия и т.д.
Обратите внимание, что упоминаемая вами ссылка довольно старая (Java EE 1.4), было несколько изменений в Java EE 5 и даже больше в Java EE 6 (что делает web.xml
"опциональным" и представляет веб-фрагменты).
Есть ли какой-либо параметр конфигурации, которого следует избегать как чуму?
Нет.
Любые параметры, связанные с производительностью или использованием памяти?
Нет, такие вещи не настроены на уровне приложения, а на уровне контейнера.
Связанный с безопасностью риск из-за общей неправильной конфигурации?
Хорошо, если вы хотите использовать ограничения безопасности, управляемые контейнером, и не удается правильно их настроить, ресурсы, очевидно, не будут должным образом защищены. Кроме того, самые большие риски безопасности исходят из кода, который вы будете развертывать IMO.
Ответ 2
Что я должен знать о web.xml кроме имени элемента и их использование?
SINGLE самый важный параметр конфигурации JSP ALL TIME находится в вашем web.xml. Дамы и господа, я даю вам... опцию TRIM-DIRECTIVE-WHITESPACES!
<jsp-config>
<jsp-property-group>
<url-pattern>*.jsp</url-pattern>
<trim-directive-whitespaces>true</trim-directive-whitespaces>
</jsp-property-group>
</jsp-config>
Это удаляет все сотни или тысячи строк пробелов, которые вы получите в своем сгенерированном HTML, если вы используете библиотеки тегов (циклы особенно уродливы и расточительны).
Другой большой - это веб-страница по умолчанию (страница, которую вы автоматически отправляете, когда вы не вводите веб-страницу в URL-адрес):
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
Ответ 3
Ответ 4
Я пытаюсь выяснить, как это работает. Этот сайт может быть вам полезен. В нем есть все возможные теги для web.xml, а также примеры и описания каждого тега.
http://wiki.metawerx.net/wiki/Web.xml
Ответ 5
Если вы используете Struts, мы отключим прямой доступ к файлам JSP с помощью этого тега в web.xml
<security-constraint>
<web-resource-collection>
<web-resource-name>no_access</web-resource-name>
<url-pattern>*.jsp</url-pattern>
</web-resource-collection>
<auth-constraint/>
Ответ 6
Файл дескриптора развертывания "web.xml": путем правильного использования
файл дескриптора развертывания, web.xml, вы можете управлять многими аспектами
поведение веб-приложения, от предварительной загрузки сервлетов, до ограничения
доступ к ресурсам, для контроля тайм-аутов сеанса.
web.xml: используется для управления многими аспектами веб-приложения.
Используя web.xml, вы можете назначить настраиваемые URL-адреса для вызова сервлетов, указать инициализацию
параметры для всего приложения, а также для определенных сервлетов, управления
таймауты сеанса, объявлять фильтры, объявлять роли безопасности, ограничивать доступ к сети
ресурсы на основе объявленных ролей безопасности и т.д.
Ответ 7
http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd " версия =" 3.0" >
<servlet>
<servlet-name>mvc-dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>mvc-dispatcher</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/mvc-dispatcher-servlet.xml</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
Ответ 8
<?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" xmlns:web="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" version="3.0">
<servlet>
<servlet-name>mvc-dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet>
<description></description>
<display-name>pdfServlet</display-name>
<servlet-name>pdfServlet</servlet-name>
<servlet-class>com.sapta.smartcam.servlet.pdfServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>mvc-dispatcher</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>pdfServlet</servlet-name>
<url-pattern>/pdfServlet</url-pattern>
</servlet-mapping>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/mvc-dispatcher-servlet.xml</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>