IBM Content Integrator ClassNotFoundException occurs when trying to use SOA Web Services on WebSphere Application Server
We are trying to get the IBM Content Integrator SOA Web Services working on WebSphere Application Server V7. We are using the IBM Content Manager OnDemand connector to connect through the SOA Web Services to the Content Manager OnDemand repository.
But when we try to access the actual Content Manager OnDemand connector / repository operations by using the SOA Web Services, Web Services returns the following SOAP error response:
COEC0121E: An error occurred while logging in to the IBM DB2 Content Manager OnDemand Web Enablement Kit Connector 1 repository. Check your logon credentials, ensure that you can access the repository, and ensure that the connector properties are set correctly.
Caused By: COEJ0037E: An error occurred while initializing the connector.
Caused By: com.venetica.vbr.ejb.bridge.odwek.OdwekBridgeFactory
The following error appears in the WebSphere Application Server SystemOut.log file:
COEJ0037E: An error occurred while initializing the connector.
[12/12/12 9:24:59:727 EET] 00000015 SystemOut O 2012-12-12
09:24:59.727 DEBUG [ICI] 816539282583342474
Exception Details : java.lang.ClassNotFoundException:
at java.lang.Class.forNameImpl(Native Method)
The connection to the Content Manager OnDemand repository works from the IBM Content Integrator administration console ('Test Connection' with the Content Manager OnDemand connector is successful).
SOA Web Services was deployed successfully according to the instructions in the information center. Web services was started successfully on WebSphere Application Server. (See related information below.)
When testing the Web Services operations through a SOAP Web Service Client , the SOA Web Services responds (confirming that it is running on WebSphere Application Server).
Resolving the problem
The documentation is missing some steps if you have the Content Manager OnDemand connector deployed to WebSphere Application Server instead of using an RMI Bridge.
1. Install the Content Manager OnDemand connector WAR (vbr_odwek.war) application to WebSphere Application Server. (See Related information below).
Within this package is the missing JAR library (
vbr_odwek.jar) that contains the missing class
(com.venetica.vbr.ejb.bridge.odwek.OdwekBridgeFactory). This same jar file can be found in ICI_HOME/ejb.
2. Copy the vbr_odwek.jar file to a new directory on the WebSphere Application Server system.
3. In the WebSphere Application Server Administration Console, do the following:
a. Create a Shared Library resource that refers to the new directory that contains the jar file from the previous step.
b. Associate the Shared Library with the vbr_soa web service application.
If you are using an RMI Bridge instead of deploying the connector to WebSphere Application Server, see the following information:
There should be a step 2c on this page that recommends adding
ICI_HOME/ejb/vbr_odwek.jar to the VBR_CLASSPATH variable.
Translate this page: