Hello,
We configured TCPS connection to oracle DB, In current project we are establishing TCP connection using below snippet:-
Import com.crystaldecisions.sdk.occa.report.lib.PropertyBag;
PropertyBag propertyBag = null;
propertyBag.put("Trusted_Connection", "b(false)");
propertyBag.put("Server Name", “1521/TEST1”);
propertyBag.put("Connection String", “Use JDBC=b(true);Connection URL=s(jdbc:oracle:thin:@//test.db.com:1521/test1);Database Class Name=s(oracle.jdbc.driver.OracleDriver);JNDI Datasource Name=s();Server=s(1521/TEST1);User ID=s(testuser);Password=;Trusted_Connection=1;JDBC Connection String=s(!oracle.jdbc.driver.OracleDriver!jdbc:oracle:thin:{userid}/{password}:@/test.db.com:1521/test1"!ServerType=5!QuoteChar=\");Generic JDBC Driver Behavior=s(Oracle)”);
propertyBag.put("Server Type", "JDBC (JNDI)");
propertyBag.put("JNDI Datasource Name", “”);
propertyBag.put("Database Class Name",”s(oracle.jdbc.driver.OracleDriver)”);
propertyBag.put("Use JDBC", "true");
propertyBag.put("URI", “!oracle.jdbc.driver.OracleDriver!jdbc:oracle:thin:{userid}/{password}@//test.db.com:1521/testdb1!ServerType=5!QuoteChar=”);
propertyBag.put("Database DLL", crdb_jdbc.dll);
when we try to establish TCPS connection using PropertyBag class for the "URI" parameter with below connection string::-
jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCPS)(HOST=testdb.com)(PORT=2484)))(CONNECT_DATA=(SERVICE_NAME=testdb1))(SECURITY=(ssl_server_cert_dnCN=testcluster)))
When we are trying with above approach(try to established TCPS connection) it is giving below error.
ERROR 23-12 05:07:53,545 - detected an exception: Unexpected database connector error
at com.crystaldecisions.reports.queryengine.Connection.t4(SourceFile:3024)
at com.crystaldecisions.reports.queryengine.Table.vc(SourceFile:2417)
at com.crystaldecisions.reports.dataengine.datafoundation.AddDatabaseTableCommand.new(SourceFile:529)
at com.crystaldecisions.reports.common.CommandManager.a(SourceFile:71)
at com.crystaldecisions.reports.common.Document.a(SourceFile:203)
at com.businessobjects.reports.sdk.requesthandler.f.a(SourceFile:175)
at com.businessobjects.reports.sdk.requesthandler.DatabaseRequestHandler.byte(SourceFile:1079)
at com.businessobjects.reports.sdk.JRCCommunicationAdapter.do(SourceFile:1166)
at com.businessobjects.reports.sdk.JRCCommunicationAdapter.if(SourceFile:660)
at com.businessobjects.reports.sdk.JRCCommunicationAdapter.a(SourceFile:166)
at com.businessobjects.reports.sdk.JRCCommunicationAdapter$2.a(SourceFile:528)
at com.businessobjects.reports.sdk.JRCCommunicationAdapter$2.call(SourceFile:526)
at com.crystaldecisions.reports.common.ThreadGuard.syncExecute(SourceFile:102)
at com.businessobjects.reports.sdk.JRCCommunicationAdapter.for(SourceFile:524)
at com.businessobjects.reports.sdk.JRCCommunicationAdapter.int(SourceFile:423)
at com.businessobjects.reports.sdk.JRCCommunicationAdapter.request(SourceFile:351)
at com.businessobjects.sdk.erom.jrc.a.a(SourceFile:54)
at com.businessobjects.sdk.erom.jrc.a.execute(SourceFile:67)
at com.crystaldecisions.proxy.remoteagent.RemoteAgent$a.execute(SourceFile:716)
at com.crystaldecisions.proxy.remoteagent.CommunicationChannel.a(SourceFile:125)
at com.crystaldecisions.proxy.remoteagent.RemoteAgent.a(SourceFile:537)
at com.crystaldecisions.sdk.occa.report.application.ds.a(SourceFile:186)
at com.crystaldecisions.sdk.occa.report.application.an.a(SourceFile:108)
at com.crystaldecisions.sdk.occa.report.application.b0.if(SourceFile:148)
at com.crystaldecisions.sdk.occa.report.application.b0.b(SourceFile:95)
at com.crystaldecisions.sdk.occa.report.application.bb.int(SourceFile:96)
at com.crystaldecisions.proxy.remoteagent.UndoUnitBase.performDo(SourceFile:151)
at com.crystaldecisions.proxy.remoteagent.UndoUnitBase.a(SourceFile:106)
at com.crystaldecisions.sdk.occa.report.application.DatabaseController.a(SourceFile:2159)
at com.crystaldecisions.sdk.occa.report.application.DatabaseController.a(SourceFile:543)
at com.crystaldecisions.sdk.occa.report.application.DatabaseController.a(SourceFile:3898)
at com.crystaldecisions.sdk.occa.report.application.DatabaseController.setTableLocation(SourceFile:2906)
at us.ri.eohhs.uhip.ies.rp.batch.bo.RpJRCExportReport.runReportExport(RpJRCExportReport.java:666)
at us.ri.eohhs.uhip.ies.rp.batch.bo.RpScheduleReportRun.process(RpScheduleReportRun.java:169)
at us.ri.eohhs.uhip.ies.rp.batch.bo.RpScheduleReportRun.drive(RpScheduleReportRun.java:241)
at us.ri.eohhs.uhip.ies.rp.batch.bo.RpScheduleReportRun.main(RpScheduleReportRun.java:265)