context.xml против web.xml в веб-приложении - PullRequest
6 голосов
/ 14 октября 2011

Я занимаюсь разработкой небольшого веб-приложения.Цель состоит в том, чтобы создать одну страницу приветствия index.html с Ajax + один сервлет для обработки запросов ajax.

Хотя я думал, что все будет в порядке только с web.xml, я не хочу развертываться на /, но до /MyApp.В свойствах проекта NetBeans предусмотрены параметры для задания пути к контексту, что помогает мне развертывать /MyApp.Тем не менее, он автоматически добавляет /META-INF/context.xml файл, что немного сбивает с толку.

Мои вопросы:

1) Мне действительно нужен файл context.xml, развернуть в /MyAppвместо /?

2) Если ответ на 1) отрицательный, как сделать то же самое только с web.xml?

3) Что именно составляет от context.xml до web.xml * * 1023

1 Ответ

10 голосов
/ 14 октября 2011

/META-INF/context.xml - это специфичный для Tomcat конфигурационный файл . Он используется для настройки развертывания вашего приложения в Tomcat, включая, среди прочего, контекстный путь, в котором оно существует. Другие контейнеры имеют похожие файлы, которые могут быть включены в WAR для конфигурации контейнера. Чтобы ответить на ваши вопросы:

  1. Нет. Встроенный context.xml - это только один из способов задания пути к контексту, и, как я уже говорил, он будет работать только в Tomcat. В Tomcat поведение по умолчанию заключается в развертывании веб-приложений в контексте с именем файла войны без расширения «.war».
  2. Вы не можете установить контекстный путь в web.xml. Это дескриптор развертывания вашего приложения. Он настраивает ваше приложение, а путь к контексту является внешним по отношению к вашему приложению. Он принадлежит серверу / контейнеру, на котором вы развертываете приложение. Настройка пути к контексту всегда выполняется в конфигурации контейнера.
  3. Если под "config.xml" вы имели в виду "context.xml", то я думаю, что я уже ответил на это. Если нет, уточните свой вопрос.
...