Возможно ли иметь одну базу приложений, обслуживаемую несколькими путями контекста в Tomcat? - PullRequest
3 голосов
/ 22 сентября 2008

Возможно ли, чтобы одна база приложений обслуживалась несколькими путями контекста в Tomcat?

У меня есть база приложений, которая недавно заменила вторую базу приложений. Моя проблема в том, что несколько пользователей все еще имеют доступ к старому контексту. Я хотел бы обслуживать, теперь распространенное, приложение из единой базы приложений, доступ к которой осуществляется через любой контекст. Я взялся за низко лежащий фрукт и использовал символическую ссылку в каталоге «webapps» ... указывающую старый контекстный путь на новый контекстный путь; это работает, но чувствует себя "сырным". И мне не нравится, что пул соединений с базой данных создается для обоих контекстов (я хотел бы минимизировать ресурсы для подключения к базе данных).

Во всяком случае, если кто-нибудь знает «правильный» способ сделать это, я буду очень признателен. Я использую Tomcat 6.0.16 - нет внешнего интерфейса apache (я полагаю, что перезапись URL будет хорошей).

Ответы [ 2 ]

2 голосов
/ 22 сентября 2008

Я не уверен, что ответ, приведенный выше, помешает загрузке вашего веб-приложения дважды (так как вам придется развернуть его как в новых, так и в старых контекстных путях), но я могу ошибаться. Другим вариантом было бы оставить чрезвычайно простое веб-приложение, оставленное в старом контексте, которое ничего не делает, за исключением того, что в web.xml объявлен один настраиваемый фильтр сервлета, который перезаписывает все запросы по новому пути (по сути, имитируя поведение правила перезаписи apache). Вы должны были бы написать класс фильтра самостоятельно, но это было бы довольно тривиально.

1 голос
/ 22 сентября 2008

Да, зайдите в диспетчер веб-приложений Tomcat и прокрутите вниз до «Развернуть каталог или файл WAR, расположенный на сервере». Для «Путь к контексту (необязательно):» вставьте новый контекст. Для «WAR или Directory URL:» укажите тот же путь, что и в существующем приложении.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...