Friday, April 25, 2014

Sometime we face below issue when we try to activate the DB adapter from prepare state.

Error:

An error occurred during activation of changes, please see the log for details.
weblogic.connector.exception.RAException: Jndi Name is null or empty.



And when DB adapter is in prepared state and you try to run the composite using db adapter you will get below exception.

<bpelFault><faultType>0</faultType><bindingFault xmlns="http://schemas.oracle.com/bpel/extension"><part name="summary"><summary>Exception occured when binding was invoked. Exception occured during invocation of JCA binding: "JCA Binding execute of Reference operation 'DB_Insert' failed due to: JCA Binding Component connection issue. JCA Binding Component is unable to create an outbound JCA (CCI) connection. SampleInsert:DB_Insert [ DB_Insert_ptt::DB_Insert(DB_InsertInput_msg) ] : 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 &lt;connection-factory/> The JCA Binding Component is unable to startup the Resource Adapter specified in the &lt;connection-factory/> element: location='eis/Db/localds'. 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 '&lt;jndi-name>' element in weblogic-ra.xml has not been set to eis/Db/Betsyg6apps. 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. </summary></part><part name="detail"><detail>JCA Resource Adapter location error. Unable to locate the JCA Resource Adapter via .jca binding file element &lt;connection-factory/> The JCA Binding Component is unable to startup the Resource Adapter specified in the &lt;connection-factory/> element: location='eis/Db/localds'. 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 '&lt;jndi-name>' element in weblogic-ra.xml has not been set to eis/Db/Betsyg6apps. 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 </detail></part><part name="code"><code>12510</code></part></bindingFault></bpelFault>

Resolution:

To resolve this error mean to activate the db adapter from prepared state, you need to look into your Plan.xml file.

You can find Plan.xml at below location

C:\Oracle\Middleware\Oracle_SOA1\soa\connectors

In my case I see there two entries in Plan.xml file as shown below which was causing the issue. I removed that entries and redeploy the adapter and it comes in active state.

<variable>
      <name>WeblogicConnector_JNDIName_13984068960991</name>
      <value></value>
    </variable>



<variable-assignment>
        <name>WeblogicConnector_JNDIName_13984068960991</name>
        <xpath>/weblogic-connector/jndi-name</xpath>
      </variable-assignment>


3 comments :