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.

Issue/Introduction

java.lang.linkageError in JDBC Call procedure activity.

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.