尝试启用 WL报告功能,我从Liberty日志中收到此错误:
[INFO] FWLSE0192I:JNDI资源 jdbc / WorklightReportsDS 映射到ORACLE数据库类型[项目财务] [err] 0 WorklightReportsPU WARN [Default Executor-thread-5] openjpa.Runtime - 使用PersistenceUnitInfo注册ClassTransformer时发生错误:名称'WorklightReportsPU',根URL [file:/ C:/ IBM / WebSphere / Liberty / usr /共享/资源/工作灯/ LIB /工作灯-JEE-library.jar]。错误已被消耗。要查看它,请将openjpa.Runtime日志级别设置为TRACE。加载时类转换将不可用。 [INFO] FWLSE0186I:禁用应用程序原始报告。 [项目融资] [INFO] FWLST0002I:=========项目/财务开始[项目融资]
因此,您可以看到报告数据库中没有记录任何内容。另外,如果我配置的是 finance / jdbc / WorklightReportsDS ,为什么它指的是 jdbc / WorklightReportsDS ?
我的Q& A env是WL 6.0 + Liberty + Oracle(Q& A Env)
根据信息中心说明,使用此
创建报告数据库CONNECT WORKLIGHTREPORTSDIS / WORKLIGHTREPORTSDIS @ ORCLWL @C:\ IBM \工作灯\ WorklightServer \数据库\创建-worklightreports-oracle.sql DISCONNECT;
我也有以下内容:
的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):活动[这是测试]成功记录。
由于自由日志表示报告已被禁用,因此我无法在数据库中看到任何数据。
配置中是否缺少某些内容?
答案 0 :(得分:0)
您是否启用了报告?请参阅信息中心中的以下主题:http://pic.dhe.ibm.com/infocenter/wrklight/v6r0m0/topic/com.ibm.worklight.help.doc/admin/t_raw_data_reports.html
在将.war文件部署到生产服务器时,还要在worklight.properties中验证报告已启用。