Нет времени выполнения на моей консоли Worklight 6.2

#ibm-mobilefirst #worklight-server #websphere-liberty

#ibm-mobilefirst #worklight-сервер #websphere-liberty

Вопрос:

После развертывания файла war в среде Worklight 6.2 консоль не отображает связанную среду выполнения: среда выполнения не найдена. Это базовое использование Worklight 6.2, но я не знаю, как это исправить!

Что я сделал :

  1. Установка Worklight Entreprise 6.2 на WebSphere Liberty 8.5.5.2 DB2 V10.5
  2. настройка configuration-liberty-db2.xml с моими настройками
  3. ant -f myxmlfile admdatabases
  4. администратор ant -f myxmlfile
  5. ant -f базы данных myxmlfile
  6. установка ant -f myxmlfile

У меня есть консоль worklight в path ~/worklightconsole, но нет среды выполнения! и в журнале liberty :


[24.06.14 15:28:00:978 CEST] 00000021 com.worklight.common.util.jmx.LibertyRuntimeMBeanHandler I Bean ‘*’ не существует. [24.06.14 15:28:00:979 CEST] 00000021 com.ibm.worklight.admin.services.RuntimeService Я не нашел mxbeans

Консоль без времени выполнения

И вот выдержка из моего server.xml файл свободы :

задача ant для корневого контекста ‘/ myapp’. —>

 <!-- Declare the IBM Worklight project runtime application. -->
<application id="myapp" name="myapp" location="MyProject.war" context-root="/myapp" type="war">
    <classloader delegation="parentLast">
        <privateLibrary>
            <fileset dir="${shared.resource.dir}/myapp/lib" includes="worklight-jee-library.jar"/>
        </privateLibrary>
    </classloader>
</application>

<!-- Declare the JNDI properties for the IBM Worklight project runtime. -->
<jndiEntry jndiName="myapp/publicWorkLightProtocol" value='"http"'/>
<jndiEntry jndiName="myapp/publicWorkLightPort" value='"9080"'/>


<!-- Declare the jar files for DB2 access through JDBC. -->
<library id="myapp/DB2Lib">
    <fileset dir="${shared.resource.dir}/myapp/db2" includes="db2jcc4.jar,db2jcc_license_cu.jar"/>
</library>

<!-- Declare the IBM Worklight Server database. -->
<dataSource jndiName="myapp/jdbc/WorklightDS" transactional="false">
    <jdbcDriver libraryRef="myapp/DB2Lib"/>
    <properties.db2.jcc databaseName="WRKLGHT" serverName="localhost" portNumber="50001" user="db2inst1" password="db2inst1" currentSchema="WRKLGHT"/>
</dataSource>

<!-- Declare the IBM Worklight Server reports database. -->
<dataSource jndiName="myapp/jdbc/WorklightReportsDS" transactional="false">
    <jdbcDriver libraryRef="myapp/DB2Lib"/>
    <properties.db2.jcc databaseName="WRKLGHT" serverName="localhost" portNumber="50001" user="db2inst1" password="db2inst1" currentSchema="WLREPORT"/>
</dataSource>

<!-- End of configuration added by IBM Worklight <configureApplicationServer> ant task for context root '/myapp'. -->
  

Комментарии:

1. Где вы разместили свой файл MyProject.war?

2. MyProject.war находится в папке apps моего сервера Liberty: /opt/IBM/WebSphere/Liberty/usr/servers/server1/apps # ls appcenterconsole. war applicationcenter.war MyProject.war worklightadmin.war worklightconsole.war

Ответ №1:

В загрузчике классов Liberty 8.5.5.2 есть дефект, который может повлиять на Worklight (не только на версию 6.2, но и на все версии) и даже на существующие приложения, отличные от Worklight, которые определяют правило политики загрузки классов в server.xml досье. Обходной путь заключается в удалении содержимого каталога рабочей области Liberty server и запуске сервера с параметром —clean (также при каждом перезапуске).

Комментарии:

1. Обходной путь не работает, но указывает на тот факт, что я использовал IBM JAVA SDK 7.1. Изменение этого на IBM JAVA SDK 6 решило проблему.

2. @Aymeric Я также перешел на использование IBM JDK 1.6, но по-прежнему нет среды выполнения, даже если я запускаю с пустой рабочей областью (только сервер по умолчанию, определенный worklight studio, или после того, как я создал пустое приложение «a» и «run on worklight deployment server»), я даже вижу войну «jmxConnector», показанную вжурналы консоли.