我已经使用BPEL轮询数据库适配器从JDeveloper 11g部署了一个Oracle SOA组合到Weblogic 11g。我想告诉它是否有效。我正在查看soa_server1-diagnostic.log,我看到以下消息:
[2014-10-08T14:53:02.753-05:00] [soa_server1] [NOTIFICATION] [] [oracle.soa.adapter] [tid: [ACTIVE].ExecuteThread: '3' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: weblogic] [ecid: b4de9447a6405836:356834d:148f023a253:-8000-00000000000002ad,1:21897] [APP: soa-infra] JCABinding=> [NotificationService.SugarCRM_Poll/2.0] :init Successfully initialized SugarCRM_Poll_db.jca
首先,我正在查找正确的日志?这是我每次跑步时应该看到的吗? 轮询数据库适配器的jca文件如下所示:
<adapter-config name="SugarCRM_Poll" adapter="Database Adapter" wsdlLocation="SugarCRM_Poll.wsdl" xmlns="http://platform.integration.oracle/blocks/adapter/fw/metadata">
<connection-factory location="eis/DB/SugarDbProd" UIConnectionName="SugarDbProd" adapterRef=""/>
<endpoint-activation portType="SugarCRM_Poll_ptt" operation="receive">
<activation-spec className="oracle.tip.adapter.db.DBActivationSpec">
<property name="DescriptorName" value="SugarCRM_Poll.OpportunityStagingTable"/>
<property name="QueryName" value="SugarCRM_PollSelect"/>
<property name="MappingsMetaDataURL" value="SugarCRM_Poll-or-mappings.xml"/>
<property name="PollingStrategy" value="LogicalDeletePollingStrategy"/>
<property name="MarkReadColumn" value="account_name_new"/>
<property name="MarkReadValue" value="X"/>
<property name="MarkUnreadValue" value="R"/>
<property name="PollingInterval" value="5"/>
<property name="MaxRaiseSize" value="1"/>
<property name="MaxTransactionSize" value="10"/>
<property name="NumberOfThreads" value="1"/>
<property name="ReturnSingleResultSet" value="false"/>
</activation-spec>
</endpoint-activation>
</adapter-config>
我也在soa_server1-diagnostic.log中看到了这个通知:
[2014-10-10T07:31:05.328-05:00] [soa_server1] [NOTIFICATION] [] [oracle.soa.adapter] [tid: Workmanager: , Version: 0, Scheduled=false, Started=false, Wait time: 0 ms\n] [userId: weblogic] [ecid: b4de9447a6405836:356834d:148f023a253:-8000-0000000000000708,1:19750] [APP: soa-infra] Database Adapter NotificationService <oracle.tip.adapter.db.InboundWork handleException> BINDING.JCA-11624[[
DBActivationSpec Polling Exception.
Query name: [SugarCRM_PollSelect], Descriptor name: [SugarCRM_Poll.OpportunityStagingTable]. Polling the database for events failed on this iteration.
Caused by com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: No operations allowed after connection closed..
This exception is considered retriable, likely due to a communication failure. To classify it as non-retriable instead add property nonRetriableErrorCodes with value "0" to your deployment descriptor (i.e. weblogic-ra.xml). Polling will be attempted again next polling interval.
我可以在Weblogic 11g管理控制台中测试连接,它可以正常工作。我看到以下消息:“在服务器soa_server1上测试TestSugarDataSource成功了。”我还能够使用netcat命令来测试连接是否成功。 “nc -vz xx.xx.xx.xx 3306”返回“连接到xx.xx.xx.xx 3306端口[tcp / mysql]成功!”所以看起来连接不是问题。
谢谢,
汤姆·亨里克森答案 0 :(得分:1)
我能够通过将oracle.soa上的日志配置更改为TRACE来查找轮询问题:32 FINEST日志记录。这使我能够看到为轮询数据库适配器运行的基础查询并进行更正。一旦我做了这个改变并更正了测试,诊断日志文件就给了我所需的一切。
谢谢,
汤姆