Как мне установить корневой путь моего foo.war как / foo / bar вместо / foo?

1

У меня есть проект, который компилируется в foo.war. Когда я бросаю его в Tomcat, индексная страница доступна на localhost: 8080/foo/с различными сервлетами и активами в качестве подкаталогов /foo/

Я хочу включить /foo/part в /foo/bar/без необходимости изменять каждый сервлет и переносить все мои статические активы в папку /bar/. Это возможно?

Я могу контролировать файл web.xml, но не последний сервер Tomcat, на котором он будет размещен. Я думаю, что есть способ сделать это в web.xml, но я не могу понять, как это сделать.

  • 0
    Я не уверен, что это возможно ... Это взято отсюда . «Если вы хотите развернуть файл WAR или каталог, используя контекстный путь, который не связан с базовым именем файла, то для предотвращения двойного развертывания необходимо использовать один из следующих параметров: 1.) Отключите autoDeploy и deployOnStartup и определите все Контексты в server.xml 2.) Найдите каталог WAR и / или за пределами appBase хоста и используйте файл context.xml с атрибутом docBase, чтобы определить его. " Обе эти опции требуют доступа к серверу, верно?
  • 0
    Неважно, я не думаю, что это применимо.
Теги:
servlets
tomcat
web.xml

1 ответ

3
Лучший ответ

Самый простой (и рекомендуемый) способ - переименовать foo.warfoo#bar.war. Это все, что нужно.
Документация (Tomcat 7)

Вы не говорите, какую версию Tomcat вы используете. Я предполагаю, что это современная версия, которая не старше трех лет.

  • 0
    Ха, я думаю, это работает. Спасибо!
  • 0
    Итак ... он обнаружился в приложении менеджера с правильным URL-адресом, но теперь сервлет фактически не запускается: SEVERE: Ошибка при настройке прослушивателя приложения класса com.netflix.karyon.server.guice.KaryonGuiceContextListener java.lang.IllegalStateException: java.io.FileNotFoundException: /usr/local/apache-tomcat-7.0.57/webapps/watson-dashboard%23ui/WEB-INF/lib/archaius-core-0.6.0.jar (нет такого файла или каталога) в org.apache.xbean.finder.archive.JarArchive. <INIT> (JarArchive.java:55)

Ещё вопросы

Сообщество Overcoder
Наверх
Меню