Опитвайки се да активирам функцията WL Reports, получих тази грешка от регистъра на Liberty:
[INFO]FWLSE0192I:JNDI ресурс jdbc/WorklightReportsDS е съпоставен към ORACLE DB тип [проектно финансиране] [err] 0 WorklightReportsPU WARN [Default 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. Трансформацията на класа по време на зареждане няма да е налична. [ИНФОРМАЦИЯ] FWLSE0186I: Необработените отчети на приложението са деактивирани. [проектно финансиране] [ИНФО ] FWLST0002I: ========= Проект /финансиране стартира [проектно финансиране]
Така че, както можете да видите, нищо не се записва в базата данни с отчети. Освен това, защо се отнася до jdbc/WorklightReportsDS, ако това, което съм конфигурирал е finance/jdbc/WorklightReportsDS?
Моята Q&A env е WL 6.0 + Liberty + Oracle (Q&A Env)
Следвайки инструкциите на инфоцентъра, базата данни с отчети беше създадена с помощта на това
CONNECT WORKLIGHTREPORTSDIS/WORKLIGHTREPORTSDIS@ORCLWL @C:\IBM\Worklight\WorklightServer\databases\create-worklightreports-oracle.sql ИЗКЛЮЧВАНЕ;
Имам и следното:
Server.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('Това е тест');
Което отпечатва в log cat следното съобщение 09-30 15:21:21.769: D/FinanceMobile(805): Дейност [Това е тест] регистрирана успешно.
Тъй като регистърът на свободата казва, че отчитането е деактивирано, така че не мога да видя никакви данни в базата данни.
Липсва ли нещо в конфигурацията?