java.lang.linkageError in JDBC Call procedure activity.

java.lang.linkageError in JDBC Call procedure activity.

book

Article ID: KB0086905

calendar_today

Updated On:

Products Versions
TIBCO ActiveMatrix BusinessWorks -
Not Applicable -

Description

Description:

An Application with a JDBC call procedure activity fails to start with the error "linkagerror."  This is related to Oracle JDBC driver classes.



Symptoms:
The following error will be seen in the Studio console log.

++++++

java.lang.LinkageError: loader constraint violation in interface itable initialization: when resolving method "com.tibco.bw.jdbc.datasourcefactory.oracle.OracleDataSourceFactory.createDataSource(Ljava/util/Properties;)Ljavax/sql/DataSource;" the class loader (instance of org/eclipse/osgi/internal/baseadaptor/DefaultClassLoader) of the current class, com/tibco/bw/jdbc/datasourcefactory/oracle/OracleDataSourceFactory, and the class loader (instance of org/eclipse/osgi/internal/baseadaptor/DefaultClassLoader) for interface org/osgi/service/jdbc/DataSourceFactory have different Class objects for the type ory.oracle.OracleDataSourceFactory.createDataSource(Ljava/util/Properties;)Ljavax/sql/DataSource; used in the signature

at java.lang.Class.getDeclaredConstructors0(Native Method)


++++++


Cause:
The driver JARs are not being provisioned correctly with conflicting driver classes from unnecessary JAR files being pushed to the runtime.

Resolution

Review the following locations for the existence of unnecessary JAR files.


- <BW_HOME>\bw\6.x\config\design\thirdparty

- <BW_HOME>\bw\6.x\config\drivers\shells\jdbc.oracle.runtime\runtime\plugins\com.tibco.bw.jdbc.datasourcefactory.oracle\lib

- <BW_HOME>\bw\6.x\system\lib 


Ensure that only ojdbc*.jar files are present for the Oracle driver. You will need to reprovision the driver using "bwadmin install oracle-driver" after deleting unwanted files.


Issue/Introduction

java.lang.linkageError in JDBC Call procedure activity.