В настоящее время мы поддерживаем множество клиентов, использующих одно и то же веб-приложение, но каждый клиент имеет свою конфигурацию для доступа к своей базе данных, настройки файлов и т. Д. По мере роста списка клиентов обновление веб-приложений становится все труднее, и дублирование ресурсы - это трата памяти, файлового пространства и т. д.
Мы хотели бы иметь родительское веб-приложение, которое будет доступно всем дочерним веб-приложениям. Затем пусть каждое дочернее веб-приложение переносит только файлы, относящиеся к ним. Когда дочернее веб-приложение запускается, Tomcat загружает веб-приложение из родительского веб-приложения и затем переопределяет любые файлы, определенные в дочернем веб-приложении, следуя идентичной структуре пакета.
Мы гуглили и не нашли готового или полного решения. Решения, на которые мы смотрели:
- Tomcat common / share - может обрабатывать файлы классов и JAR, но мы не видим способа обработки статических ресурсов и ресурсов JSP, находящихся над каталогом WEB-INF.
- CATALINA_BASE, похоже, больше подходит для запуска нескольких экземпляров Tomcat, которых мы бы лучше избегали
- Возможное решение для Maven, но мы не большие поклонники Maven, поэтому лучше его тоже избегать.
У кого-нибудь есть предложения или идеи, как это решить? Если конфигурация Tomcat невозможна, как насчет другого сервера приложений (такого как Glassfish) или инструмента для обновления динамического файла (такого как OSGi, rsync). Хотел бы по возможности удалить дублирование ресурсов.
Спасибо.