Сценарий ANT для развертывания файла War в MobileFirst Server для создания среды выполнения

Я использую сценарий Ant для развертывания файла войны на первом мобильном сервере для создания среды выполнения. Но я не уверен насчет сценария ANT, я получаю ошибки, касающиеся конфигурации базы данных.

Это ошибка, которую я получаю при запуске Ant Script:

     Building project
        command: 'C:\Program Files\agent\opt\apache-ant-1.8.4\bin\ant.bat' -f 'C:\Program Files\agent\var\work\MF-Component\wardeploy.xml'
        Buildfile: C:\Program Files\agent\var\work\MF-Component\wardeploy.xml

        install:
        [configureapplicationserver] Logging output of task <configureApplicationServer> to file C:\Users\miracle\Documents\IBM MobileFirst Platform Server Data\Configuration Logs\configureApplicationServer_2016_02_12_03_35_41.log
        [configureapplicationserver] WARNING: The Reports database is deprecated in IBM MobileFirst Platform Foundation since V7.0.0.
        [configureapplicationserver] Use Operational Analytics instead.
        [configureapplicationserver] See http://ibm.biz/knowctr#SSHS8R_7.1.0/com.ibm.worklight.monitor.doc/monitor/c_op_analytics_overview.html

        BUILD FAILED
        C:\Program Files\agent\var\work\MF-Component\wardeploy.xml:33: Element <db2> inside <database kind="Worklight"> inside <configureApplicationServer>: Database does not contain the expected tables. The test table GADGET_USER_PREF was not found. 
    You may create the required tables through an invocation of <configureDatabase>.

    Total time: 4 seconds
    Caught: com.urbancode.air.ExitCodeException: Command failed with exit code: 1
    com.urbancode.air.ExitCodeException: Command failed with exit code: 1
        at com.urbancode.air.CommandHelper.runCommand(CommandHelper.groovy:195)
        at com.urbancode.air.CommandHelper$runCommand$0.callCurrent(Unknown Source)
        at com.urbancode.air.CommandHelper.runCommand(CommandHelper.groovy:121)
        at com.urbancode.air.CommandHelper$runCommand.call(Unknown Source)
        at ant.run(ant.groovy:123)

Здесь мне не нужны никакие таблицы для развертывания файла войны, но он запрашивал таблицу. Для развертывания файла войны ему нужна база данных. Я дал учетные данные, но показывает некоторые ошибки, как указано выше.

Вот сценарий Ant, который я использую.

    <?xml version="1.0" encoding="UTF-8"?>
    <project basedir="." default="install">
      <taskdef resource="com/worklight/ant/deployers/antlib.xml">
        <classpath>
          <pathelement location="C:\Program Files\IBM\MobileFirst_Platform_Server\WorklightServer\worklight-ant-deployer.jar"/>
        </classpath>
      </taskdef>

      <target name="databases">
        <configuredatabase kind="Worklight">
          <db2 database="TESTDB" server="172.17.0.177" user="mobusr4" password="mobileuser4">
          </db2>
          <driverclasspath>
            <fileset dir="C:\Program Files\IBM\WebSphere\Liberty\usr\shared\resources\worklight_1\db2">
              <include name="db2jcc4.jar"/>
              <include name="db2jcc_license_*.jar"/>
            </fileset>
          </driverclasspath>
        </configuredatabase>
        <configuredatabase kind="WorklightReports">
          <db2 database="TESTDB" server="172.17.0.177" user="mobusr4" password="mobileuser4">
                  </db2>
          <driverclasspath>
            <fileset dir="C:\Program Files\IBM\WebSphere\Liberty\usr\shared\resources\worklight_1\db2">
              <include name="db2jcc4.jar"/>
              <include name="db2jcc_license_*.jar"/>
            </fileset>
          </driverclasspath>
        </configuredatabase>
      </target>

      <target name="install">
        <configureapplicationserver>
          <project warfile="C:\Program Files\agent\var\work\MF-Component\bin\Git_Demo.war" libraryfile="C:\Program Files\IBM\MobileFirst_Platform_Server\WorklightServer\worklight-jee-library.jar"/>

          <!-- Here you can define values which override the 
               default values of Worklight configuration properties -->
          <property name="serverSessionTimeout" value="10"/>    

          <applicationserver>
            <websphereapplicationserver installdir="C:\Program Files\IBM\WebSphere\Liberty"
                                        profile="Liberty"
                                        user="admin" password="admin">
              <server name="UCDServer"/>
            </websphereapplicationserver>
          </applicationserver>
          <database kind="Worklight">
            <db2 database="TESTDB" server="172.17.0.177" user="mobusr4" password="mobileuser4"/>
            <driverclasspath>
              <fileset dir="C:\Program Files\IBM\WebSphere\Liberty\usr\shared\resources\worklight_1\db2">
                <include name="db2jcc4.jar"/>
                <include name="db2jcc_license_*.jar"/>
              </fileset>
            </driverclasspath>
          </database>
          <database kind="WorklightReports">
            <db2 database="TESTDB" server="172.17.0.177" user="mobusr4" password="mobileuser4"/>
            <driverclasspath>
              <fileset dir="C:\Program Files\IBM\WebSphere\Liberty\usr\shared\resources\worklight_1\db2">
                <include name="db2jcc4.jar"/>
                <include name="db2jcc_license_*.jar"/>
              </fileset>
            </driverclasspath>
          </database>
        </configureapplicationserver>
      </target>
      </project>

person Raj Sekhar    schedule 12.02.2016    source источник


Ответы (1)


Это правильно, файл WAR должен иметь базу данных. Перед созданием источника данных на сервере приложений задача Ant настроенной базы данных проверяет, существует ли источник данных и имеются правильные таблицы. Не нашел и вышел из строя с ошибкой.

Чтобы создать таблицы базы данных, запустите цель «базы данных» в вашем файле ant.

Для получения дополнительной информации см. https://www-01.ibm.com/support/knowledgecenter/SSHS8R_7.1.0/com.ibm.worklight.deploy.doc/devref/c_project_war_file_ant_tasks.html

person Didier Vidal    schedule 12.02.2016