Tuesday, March 18, 2014

The JCA Binding Component is unable to startup the Resource Adapter specified in the connection-factory

A common error that you will encounter in a SOA cluster environment.

When you are tying to interact with a database from a clustered soa environment you will get following error message

Exception occured when binding was invoked. Exception occured during invocation of JCA binding: "JCA Binding execute of Reference operation 'Token' failed due to: JCA Binding Component connection issue. JCA Binding Component is unable to create an outbound JCA (CCI) connection. Tokenize:Token [ Token_ptt::Token(InputParameters) ] : The JCA Binding Component was unable to establish an outbound JCA CCI connection due to the following issue: BINDING.JCA-12510 JCA Resource Adapter location error. Unable to locate the JCA Resource Adapter via .jca binding file element The JCA Binding Component is unable to startup the Resource Adapter specified in the element: location='eis/Token'. The reason for this is most likely that either 1) the Resource Adapters RAR file has not been deployed successfully to the WebLogic Application server or 2) the '' element in weblogic-ra.xml has not been set to eis/Token. In the last case you will have to add a new WebLogic JCA connection factory (deploy a RAR). Please correct this and then restart the Application Server Please make sure that the JCA connection factory and any dependent connection factories have been configured with a sufficient limit for max connections. Please also make sure that the physical connection to the backend EIS is available and the backend itself is accepting connections. ". The invoked JCA adapter raised a resource exception. Please examine the above error message carefully to determine a resolution.

The reason for this issue is that the jndi configuraitons for the data sources are not replicated in both the nodes.

This probably happens when you create a data source and only one node of the soa server is up and running.

Ideally when the other managed server comes up the configuration should be replicated to the other node as well however if coherence is not configured properly you might end up with an issue that the jndi configurations are not getting replicated.

This is most likely due to an issue in soa cluster set up.

this issue can be resolved by

1> Manually adding the jndi entry in the Plan.xml file of both the managed server(Sync up the Plan.xml in both the server) and restarting all the server (admin+managed).

2>Remove the data source and recreate it when both the nodes are up and running. Make sure your data source points to the cluster and not to individual node.


This is a common issue and it happens when the Plan.xml does not lies in the common shared folder. One way to resolve this issue can be have a common share drive in the two machine having managed servers and and point the Plan.xml in both the managed server to the same location. In this way the changes done in one node will be reflected in both the nodes simultaneously.

No comments: