7.3.4. Развертывание WAR в Tomcat Windows Service

  1. Добавьте в конец build.gradle задачу сборки buildWar:

    task buildWar(type: CubaWarBuilding) {
        appHome = './app_home'
        singleWar = false
        includeContextXml = true
        includeJdbcDriver = true
        appProperties = ['cuba.automaticDatabaseUpdate': true]
    }

    Если параметры сервера отличаются от параметров локального Tomcat, используемого для быстрого развертывания, укажите соответствующие свойства приложения:

    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'
        ]
    }

    Можно также указать отдельный context.xml для настройки соединения с production БД, например:

    task buildWar(type: CubaWarBuilding) {
        appHome = './app_home'
        singleWar = false
        includeContextXml = true
        includeJdbcDriver = true
        appProperties = ['cuba.automaticDatabaseUpdate': true]
        coreContextXmlPath = 'modules/core/web/META-INF/production-context.xml'
    }
  2. Запустите задачу buildWar. В результате, в каталоге build/distibutions проекта будут сгенерированы файлы app.war и app-core.war.

    gradlew buildWar
  3. Скачайте и установите Tomcat 8 Windows Service Installer.

  4. После установки, перейдите в подкаталог bin установленного сервера и запустите tomcat8w.exe от имени администратора. На вкладке Java установите параметр Maximum memory pool 1024MB. Перейдите на вкладку General и запустите сервис.

    tomcatPropeties
  5. Пропишите -Dfile.encoding=UTF-8 в поле Java Options.

  6. Скопируйте сгенерированные файлы app.war и app-core.war в подкаталог webapps сервера.

  7. Запустите сервис Tomcat.

  8. Откройте http://localhost:8080/app в браузере.