Как обновить файлы конфигурации в WAS Liberty один раз после развертывания Разве это не может быть похоже на веб-сервер Tomcat? - PullRequest
1 голос
/ 04 апреля 2019

После развертывания файла WAR в контейнере WAS Liberty я пытаюсь отредактировать один из файлов конфигурации в папке «WEB-INF», остановив и снова перезапустив сервер свободы WAS. Однако я не могу использовать обновленную информацию, и она использует старую конфигурацию, которая использовалась во время первоначального развертывания.

Ответы [ 3 ]

2 голосов
/ 04 апреля 2019

Если вы введете .war, оно автоматически расширяется при каждом запуске сервера.Однако вы также можете использовать «расширенное развертывание» и поместить распакованный .war в папку приложений.В этом случае вы сможете изменять файлы на лету без перезаписи при перезапуске.Проверьте эту ссылку для более подробной информации.

0 голосов
/ 11 апреля 2019

Спасибо за ваш ответ !!

Пожалуйста, найдите детали требований.

Развернут файл WAR @ / opt / Liberty / wlp / usr / servers / TCLiberty / apps /

-rw-r - r-- 1 clsqa cls 43358874 5 апреля 17:21 TC-DEV-4.3.war

Этот файл будет извлечен @ / opt / Liberty / wlp / usr /серверы / TCLiberty / приложения / расширенный /

/ opt / Liberty / wlp / usr / серверы / TCLiberty / apps / расширенный> ls

drwxr-x --- 10 clsqa cls 4096 11 апреля14:53 TC-DEV-4.3.war

/ opt / Liberty / wlp / usr / серверы / TCLiberty / apps / extended> ls -ltr TC-DEV-4.3.war всего 60 -rw-r----- 1 clsqa cls 1555 28 февраля 01:53 index.html drwxr-x --- 3 clsqa cls 4096 11 апреля 14:53 .. drwxr-x --- 2 clsqa cls 4096 11 апреля 14:53 META-INF drwxr-x --- 9 clsqa cls 4096 11 апреля 14:53 images drwxr-x --- 2 clsqa cls 4096 11 апреля 14:53 logs drwxr-x --- 8 clsqa cls 4096 11 апреля 14:53 WEB-INF drwxr-x --- 3 clsqa cls 4096 11 апреля 14:53 css drwxr-x --- 2 clsqa cls 12288 11 апреля 14:53 html drwxr-x --- 10 clsqa cls 4096 11 апреля 14:53.drwxr-x --- 2 clsqa cls 12288 11 апреля 14:53 js drwxr-x --- 2 clsqa cls 4096 11 апреля 14:53 pdf

Извлечение файла WAR было выполнено автоматически, так как мы сделали autoexpand = true

<!-- Enable features -->
<featureManager>
    <feature>webProfile-8.0</feature>
</featureManager>

<!-- To access this server from a remote client add a host attribute to the following element, e.g. host="*" -->
<httpEndpoint id="defaultHttpEndpoint"
              httpPort="9080"
              httpsPort="9443"
              host="*" />

<!-- Automatically expand WAR files and EAR files -->
<applicationManager autoExpand="true"/>
<webApplication contextRoot="TC-DEV-4.3" location="TC-DEV-4.3.war" />
<mimeTypes>
<type>.htc=text/x-component</type>
</mimeTypes>

Теперь мое требование - внести изменения в файл, который доступен в «/ opt / Liberty / wlp / usr / servers / TCLiberty»./apps/expanded/TC-DEV-4.3.war/WEB-INF/abilities

/ opt / Liberty / wlp / usr / Servers / TCLiberty / apps / extended / TC-DEV-4.3.war / WEB-INF> ls TMS.properties -rw-r ----- 1 clsqa cls 2789 апр. 2 2010 TMS.properties

Содержанием этого файла являются некоторые предопределенные переменные (константы) и IP-адрес (переменная) изприложение и соответствующий порт.Этот IP-адрес всегда отличается, который необходимо изменить в зависимости от сервера приложений и портов среды.

appaddrlist = //:

. Чтобы внести изменения в эти файлы, мне нужно остановитьЛиберти сервер.Но когда я снова перезагружаю сервер, существующий файл WAR будет извлечен по «расширенному» пути.И я теряю свои изменения.

Теперь, согласно нашему обсуждению и предоставленному решению, я могу создать файл server.xml и изменить опцию autoexpand на false.В этом случае файл TMS.property не будет перезаписан, и моя проблема будет решена.

Однако я считаю это решение обходным путем, поскольку каждый раз, когда мне нужно изменить файл server.xml.

Есть ли другое решение?Ранее я приводил ссылку на веб-сервер tomcat, где мы можем вносить изменения в папку WEB-INF после автоматического извлечения сервером tomcat.

Запрос руководства в этом отношении.

Спасибо

0 голосов
/ 09 апреля 2019

Продолжите эту проблему ... и спасибо за ваши ответы на этот вопрос.Я ищу решение, в котором он будет автоматически распаковывать WAR-файл, например, tomcat, WAS и т. Д., И мы можем обновлять и использовать информацию после извлечения WAR.

Я проверил опцию autoexpand и сделал ее ложной.Теперь после внесения этих изменений, WAR-файл не извлекается в папке приложений.

На самом деле, мы можем использовать это решение в качестве обходного пути, т.е. необходимо включить опцию автоматического расширения в server.xml.Это расширит / извлечет файл WAR.Затем необходимо остановить сервер Liberty.Теперь обновите server.xml и отключите опцию автоматического расширения.После этого нам нужно обновить необходимый файл конфигурации.Затем нужно запустить сервер.Это на самом деле работает, но это не может быть решением.

Я ищу решение, подобное веб-серверу tomcat, где после развертывания файла war мы можем внести изменения в webapps / xx / WEB-INF / path для дальнейших настроек конфигурации.

...