5.3.4. Развертывание WAR в Tomcat Windows Service
-
Откройте диалог в Studio: дерево проектов CUBA > Project > Deployment > WAR Settings, или просто вручную добавьте задачу buildWar в конец скрипта сборки build.gradle.:
task buildWar(type: CubaWarBuilding) { appHome = '${app.home}' singleWar = true includeContextXml = true includeJdbcDriver = true appProperties = ['cuba.automaticDatabaseUpdate': true] }Если параметры сервера отличаются от параметров локального Tomcat, используемого для быстрого развертывания, укажите соответствующие свойства приложения. Например, если конечный сервер запущен на порту 9999 и вы используете сборку раздельных WAR файлов, то определение задачи должно выглядеть следующим образом:
task buildWar(type: CubaWarBuilding) { appHome = '${app.home}' singleWar = false includeContextXml = true includeJdbcDriver = true appProperties = [ 'cuba.automaticDatabaseUpdate': true, 'cuba.webPort': 9999, 'cuba.connectionUrlList': 'http://localhost:9999/app-core' ] }Вы можете указать отдельный файл проекта
war-context.xmlдля указания настроек подключения к базе данных, или предоставить этот файл позже на сервере:task buildWar(type: CubaWarBuilding) { appHome = '${app.home}' singleWar = true includeContextXml = true includeJdbcDriver = true appProperties = ['cuba.automaticDatabaseUpdate': true] coreContextXmlPath = 'modules/core/web/META-INF/war-context.xml' } -
Запустите задачу
buildWar. В результате, файлapp.war(или несколько файлов, если вы настроили сборку раздельных WAR) будет собран в каталогеbuild/distributionsвашего проекта.gradlew buildWar -
Скачайте и установите Tomcat 9 Windows Service Installer с официального сайта Apache Tomcat.
-
После завершения установки, перейдите в подкаталог
binустановленного сервера и запуститеtomcat9w.exeот имени администратора, чтобы поменять настройки службы Tomcat:-
На вкладке Java установите параметр Maximum memory pool 1024MB.
-
Укажите для Tomcat использовать кодировку UTF-8, добавив строку
-Dfile.encoding=UTF-8в поле Java Options. -
Укажите домашний каталог приложения, добавив строку
-Dapp.home=c:/app_homeв поле Java Options.
-
-
Если вы хотите предоставить параметры подключения к БД через локальный файл на сервере, создайте файл в подкаталоге
conf/Catalina/localhostкаталога Tomcat. Название файла зависит от названия WAR-сборки, напримерapp.xmlдля single WAR, илиapp-core.xml, если собираются раздельные WAR-файлы. Скопируйте содержимоеcontext.xmlв этот файл. -
При использовании настроек по умолчанию, все журнальные сообщения приложения попадают в файл
logs/tomcat9-stdout.log. У вас есть два варианта, как кастомизировать настройки журналов:-
Создать файл конфигурации logback в вашем проекте. Укажите путь к этому файлу в параметре
logbackConfigurationFileзадачи buildWar (вручную или с помощью диалога Studio WAR Settings). -
Создать файл с настройками журналирования на конечном сервере.
Скопируйте файл
logback.xmlиз локального Tomcat (под-папкаdeploy/tomcat/confпроекта) в домашний каталог приложения и поменяйте свойствоlogDirв этом файле:<property name="logDir" value="${app.home}/logs"/>Добавьте следующую строчку в поле Java Options окна настроек Windows-службы Tomcat 9, чтобы указать путь к настройкам журналирования:
-Dlogback.configurationFile=C:/app_home/logback.xml
-
-
Скопируйте сгенерированный WAR файл(-ы) в подкаталог
webappsсервера Tomcat. -
Перезапустите службу Tomcat.
-
Откройте
http://localhost:8080/appв браузере.