2016-02-25 4 views
0

Внешне предоставленный военный файл включает его конфигурацию внутри каталога WEB-INF. Я пытаюсь заставить Tomcat предоставить веб-приложение альтернативный каталог WEB-INF, поэтому я могу установить конфигурацию под контроль версий и не изменять файл войны. Новые версии военного файла будут поставляться периодически.У вас есть WEB-INF вне webapp?

Итак, что я хочу сделать, это скопировать содержимое WEB-INF вне Tomcat, поместить его под контроль версий, а затем сообщить Tomcat (8, но мы можем переключиться на 7), чтобы использовать этот внешний как WEB-INF. Таким образом, новое развертывание автоматически использует старую конфигурацию, и изменения в конфигурации не будут потеряны.

(я на самом деле думает о имеющих конфигурацию в виде отдельного развертываемых/«веб-приложение» и пусть Дженкинс справиться с этим, так что никто не имеет доступа к UserSpace сервера напрямую. Но это не имеет отношения к вопросу, я думаю)

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

$CATALINA_BASE/conf/[enginename]/[hostname]/[webappname].xml 

Эти файлы могут поставлять внешнюю конфигурацию для определенных приложений, поэтому я думаю, что это место для начала. Вот моя попытка:

<Context> 
    <Resources> 
    <PreResources className="org.apache.catalina.webresources.DirResourceSet" 
        base="/home/tomcat/webapps/config/conf" webAppMount="/WEB-INF" /> 
    </Resources> 
</Context> 

Я попробовал другой каталог, а также, за пределами WebApps, но это не сработало. Кто-нибудь знает, почему это не работает? Является ли это всего лишь мечтой, я буду вынужден либо изменить военные файлы, либо сделать рекомендуемый разработчиком вариант-stop-patch в «config-start»?

ответ

0

Кажется, что это работает отлично. Я бы просто положил одну букву в базовый путь как нижний, а не верхний.

Один из тех случаев, когда проблема была решена в тот момент, когда другой человек взглянул на то, что я на самом деле написал.

Mods; не стесняйтесь либо полностью удалить вопрос, либо просто оставьте его как практический пост для тех, кто ищет, как решить ту же проблему в будущем.

Смежные вопросы