DataDirect Connect JDBC Oracle Driver not working as expected

What product/components do you use and which version/fix level?

JVM 1.8.0_181

Software AG Designer 10.3
WmDB Version 10.3.0.0.118

Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production

Are you using a free trial or a product with a customer license?

Licensed installation

What are trying to achieve? Please describe in detail.

Have the wmDB Adaptor to connect to a Oracle Database using the DataDirect Connect JDBC Oracle Driver shipped with Software AG webMethods

The driver FQ class name is - com.wm.dd.jdbc.oracle.OracleDriver

The following details (obfuscated for privacy) are being use to configure wmDB in the webMethods Integration Server (WmDB > Alias Management > Edit)

Alias: DBxxxx
DB URL: jdbc:wm:orale://dbxxxx-server:1521;SID=DBxxx;GLOBAL_NAME=DBxxxx.global
DB Username: my-identity
DB Driver: com.wm.dd.jdbc.oracle.OracleDriver
Minimum Connections: 1
Maximum Connections: 10
Expiration Time (ms): 8000
Loaded Driver: com.wm.dd.jdbc.oracle.OracleDriver (drop-down list selection)

A JDBC Pool Alias Definition has already been created and this works as expected.

Do you get any error messages? Please provide a full error message screenshot and log file.

When attempting to connect using the above wmDB definition to return the tables in the DB (WmDB > Service Generation > Connection Parameters > Tables) the following error returned.

Could not connect: [SoftwareAG][Oracle JDBC Driver]This driver is locked for use with embedded applications.

image

The stack trace in the log file is:

java.sql.SQLException: [SoftwareAG][Oracle JDBC Driver]This driver is locked for use with embedded applications.
at com.wm.dd.jdbc.oraclebase.ddcr.b(Unknown Source)
at com.wm.dd.jdbc.oraclebase.ddcr.a(Unknown Source)
at com.wm.dd.jdbc.oraclebase.ddcq.b(Unknown Source)
at com.wm.dd.jdbc.oraclebase.ddcq.a(Unknown Source)
at com.wm.dd.jdbc.oraclebase.BaseConnection.createStatement(Unknown Source)
at com.wm.dd.jdbc.oraclebase.BaseConnection.createStatement(Unknown Source)
at com.wm.dd.jdbc.oraclebase.BaseDatabaseMetaData.getTables(Unknown Source)
at com.wm.app.b2b.server.JDBCConnection.getTables(JDBCConnection.java:909)
at pub.db.getTables(db.java:596)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at com.wm.app.b2b.server.JavaService.baseInvoke(JavaService.java:421)
at com.wm.app.b2b.server.invoke.InvokeManager.process(InvokeManager.java:760)
at com.wm.app.b2b.server.util.tspace.ReservationProcessor.process(ReservationProcessor.java:46)
at com.wm.app.b2b.server.invoke.StatisticsProcessor.process(StatisticsProcessor.java:54)
at com.wm.app.b2b.server.invoke.ServiceCompletionImpl.process(ServiceCompletionImpl.java:250)
at com.wm.app.b2b.server.invoke.ValidateProcessor.process(ValidateProcessor.java:49)
at com.wm.app.b2b.server.invoke.PipelineProcessor.process(PipelineProcessor.java:171)
at com.wm.app.b2b.server.ACLManager.process(ACLManager.java:345)
at com.wm.app.b2b.server.invoke.DispatchProcessor.process(DispatchProcessor.java:34)
at com.wm.app.b2b.server.AuditLogManager.process(AuditLogManager.java:401)
at com.wm.app.b2b.server.invoke.InvokeManager.invoke(InvokeManager.java:632)
at com.wm.app.b2b.server.invoke.InvokeManager.invoke(InvokeManager.java:444)
at com.wm.app.b2b.server.invoke.InvokeMan...<truncated>

What was expected

A connection would be made to the Oracle Database and tables belonging to the chosen schema would be shown in WebMethods Integration Server

How do we unlock the driver so it can be used to connect to the Oracle Database as expected?

Hi,

I am not sure if DataDirect Driver is expected to work with WmDB package.

Most likely it will only work the WmJDBCAdapter package.

JDBC Pool Alias for internal functions is considered as embedded application.

Please check if it is really neccessary to use WmDB package for your custom implementation.
Most likely you want to redesign it to use WmJDBCAdapter package to benefit from the DataSource approach with Connection-Pooling facilities.

Regards,
Holger

1 Like

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.