When you are using one of the following Adapters – Database/Oracle Application/AQ, sometimes (randomly) you might get an error like:

“Exception occured when binding was invoked. Exception occured during invocation of JCA binding: “JCA Binding execute of Reference operation ‘GetData’ failed due to: Stored procedure invocation error. Error while trying to prepare and execute the BPEL_GETDATA.PROCEDURE$GET_ DATA API. An error occurred while preparing and executing the BPEL_GETDATA.PROCEDURE$GET_ DATA API. Cause: java.sql.SQLTimeoutException: ORA-03111: break received on communication channel Check to ensure that the API is defined in the database and that the parameters match the signature of the API. This exception is considered retriable, likely due to a communication failure. Because the global transaction is rolling back the invoke must be retried in a new transaction, restarting from the place of the last transaction commit. To classify it as non-retriable instead add property nonRetriableErrorCodes with value “1013” to your deployment descriptor (i.e. weblogic-ra.xml). “. The invoked JCA adapter raised a resource exception. Please examine the above error message carefully to determine a resolution.”

DbAdapter provides all kind of operations that helps you interact with the DB.
I saw more than few times, questions, about how to use dynamic parameters when executing the ‘Execute Pure SQL‘ operation.
In the following step I will explain how to do it.

I must say that I’ve predicted this error….
One of my customer’s requirements is to run a simple query on Oracle 10g Database.
I’ve developed a simple process in Bpel 10g that uses ‘select’ operation from a DbAdapter.
I ran the process from the BPELConsole, and got the following error: