Я предполагаю, что у вас есть один из экземпляров вашего приложения в каталоге webapps
, откуда оно автоматически развертывается под своим именем.С помощью элемента Context вы можете развертывать приложения из любой точки файловой системы.
Однако рекомендуется не редактировать server.xml с этой информацией, а создавать отдельные файлы context.xml в файле conf / hostname илипросто разверните в директории хоста webapps.Все, что вы конфигурируете в server.xml, требует перезапуска сервера, если вы хотите что-то изменить.Конфигурация за пределами server.xml может быть получена во время выполнения без перезапуска.
Редактировать: Вероятно, вывод моего предыдущего ответа был неясен:
Когда вы используете элементы контекста для настройки:Я предлагаю не использовать каталог веб-приложений для развертывания ваших веб-приложений.Просто укажите каталог, в котором вы фактически развернули свое веб-приложение.Это гарантирует, что ни один контекст не будет развертывать ваше приложение с webapps/appname
как /appname
, даже если ваше определение контекста указывает на /
.
Альтернативой является развертывание приложения с именем ROOT
в веб-приложениях - это ярлык для фактического развертывания этого веб-приложения как /
(осторожно: ВСЕ CAPS для имени каталога или файла (ROOT.war) даже в Windows, если я правильно помню).Но IMHO было бы более понятно, если вы решите либо для определения контекста определить путь (но развернуть за пределами appbase (webapps
), либо для развертывания в appbase (например, webapps
)) развертывание.
Перебирая appbase для указания на какой-либо каталог в веб-приложениях, вы наверняка будете раздражать любого, кто ожидает, что приложения из каталога webapps
будут развернуты в Tomcat. Это простой способ потратить много времени.времени на устранение фантомных проблем - не делайте этого.