При попытке включить функцию Отчеты WL я получил эту ошибку из журнала Liberty:
[INFO]FWLSE0192I: Ресурс JNDI jdbc/WorklightReportsDS сопоставлен с типом БД ORACLE [проектное финансирование] [ошибка] 0 WorklightReportsPU WARN [Executor-thread-5 по умолчанию] openjpa.Runtime — ошибка при регистрации ClassTransformer с PersistenceUnitInfo: имя «WorklightReportsPU», корневой URL-адрес [file:/C:/IBM/WebSphere/Liberty/usr/shared/resources/worklight/lib/worklight-jee-library.jar]. Ошибка была поглощена. Чтобы увидеть это, установите уровень журнала openjpa.Runtime на TRACE. Преобразование класса во время загрузки будет недоступно. [INFO ] FWLSE0186I: необработанные отчеты приложений отключены. [проектное финансирование] [INFO ] FWLST0002I: ========= Проект /финансирование запущен [проектное финансирование]
Итак, как видите, в базе данных отчетов ничего не записывается. Кроме того, почему это относится к jdbc/WorklightReportsDS, если я настроил finance/jdbc/WorklightReportsDS?
Моя среда вопросов и ответов — WL 6.0 + Liberty + Oracle (окружение вопросов и ответов)
Следуя инструкциям информационного центра, база данных отчетов была создана с использованием этого
ПОДКЛЮЧИТЬ WORKLIGHTREPORTSDIS/WORKLIGHTREPORTSDIS@ORCLWL @C:\IBM\Worklight\WorklightServer\databases\create-worklightreports-oracle.sql ОТКЛЮЧИТЬ;
У меня также есть следующее:
Сервер.xml
<application id="finance" name="finance" location="FinanceMobile.war" type="war">
.....
<dataSource jndiName="finance/jdbc/WorklightReportsDS" transactional="false">
<jdbcDriver libraryRef="worklight/OracleLib"/>
<properties.oracle driverType="thin" URL="jdbc:oracle:thin:@localhost:1521:ORCLWL" user="WORKLIGHTREPORTSDIS" password="WORKLIGHTREPORTSDIS"/>
</dataSource>
Web.xml
<resource-ref>
<description>Reports Database</description>
<res-ref-name>finance/jdbc/WorklightReportsDS</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
<env-entry>
<description>[OPTIONAL] Is reports active (true/false). Default: false.</description>
<env-entry-name>reports.exportRawData</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>true</env-entry-value>
</env-entry>
Я запускаю Liberty Server, а также запускаю мобильное приложение (эмулятор Android), которое вызывает этот метод.
WL.Client.logActivity('Это тест');
Что печатает в журнале cat следующее сообщение 09-30 15:21:21.769: D/FinanceMobile(805): Активность [Это тест] зарегистрирована успешно.
В журнале Liberty написано, что отчетность отключена, поэтому я не вижу никаких данных в базе данных.
Чего-то не хватает в конфигурации?