Java invocation error while using DB adapter in osb in managed mode
AnjuJan 25 2011 — edited Jan 25 2011Hi All,
I have to call a procedure which inserts data in to a table using OSB.
For that I have created a DB adapter, whose WSDL I have used in OSB business service to invoke it in Managed mode.
For Managed mode I have configured the DB Adapter Connection Factory and DataSource.
While running the business service this is the error which I am getting in Managed mode:
<Error> <JCA_FRAMEWORK_AND_ADAPTER> <BEA-000000> <servicebus:/WSDL/BERSESSION/DatabaseInboud [
DatabaseInboud_ptt::DatabaseInboud(InputParameters) ] - Could not invoke operation 'DatabaseInboud' against the 'Database Adapter' due to:
JCA-11811 Error while trying to prepare and execute an API. An error occurred while preparing and executing the *<<Procedure Name>>* API. Cause: java.sql.SQLSyntaxErrorException: ORA-02089: COMMIT is not allowed in a subordinate session
ORA-06512: at *<<Procedure Name>>* , line 30 ORA-06512: at line 1 [Caused by: ORA-02089: COMMIT is not allowed in a subordinate
session ORA-06512: at *<<Procedure Name>>* , line 30 ORA-06512: at line 1 ]. Check to ensure that the API is defined in the
database and that the parameters match the signature of the API. Contact oracle support if error is not fixable. > <Jan 25, 2011 3:34:04 AM
EST> <Error> <JCA_FRAMEWORK_AND_ADAPTER> <BEA-000000> <servicebus:/WSDL/TEMPSESSION/DatabaseInboud [
DatabaseInboud_ptt::DatabaseInboud(InputParameters) ] - Rolling back JCA LocalTransaction> <Jan 25, 2011 3:34:04 AM EST> <Error>
<JCATransport> <BEA-381967> <Invoke JCA outbound service failed with application error>
I am able to run all other operations like select, insert and delete in managed mode using same DB Adapter Connection Factory and DataSource.
Only when I try to call a procedure in Managed mode it fails.
The same business service works fine in Non-Manage mode.
Any help would be highly appreciated.
Thanks a lot for any help in advance.
Regards,
Anju