I'm trying to call stored procedures within Sybase via a Connection obtained from within JBoss 3.2.2. I create a PreparedStatement for a Stored Procedure request. When trying to execute this statement, I get the following exception:
SQL Exception occurred: Stored procedure 'SaveAlert' may be run only in unchained transaction mode. The 'SET CHAINED OFF' command will cause the current session to use unchained transaction mode.
com.gs.futures.support.alert.common.AlertException: SQL Exception occurred: Stored procedure 'SaveAlert' may be run only in unchained transaction mode. The 'SET CHAINED OFF' command will cause the current session to use unchained transaction mode.
at sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(StreamRemoteCall.java:240)
at sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:215)
at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:117)
at org.jboss.invocation.jrmp.server.JRMPInvoker_Stub.invoke(Unknown Source)
at org.jboss.invocation.jrmp.interfaces.JRMPInvokerProxy.invoke(JRMPInvokerProxy.java:135)
at org.jboss.invocation.InvokerInterceptor.invoke(InvokerInterceptor.java:96)
at org.jboss.proxy.TransactionInterceptor.invoke(TransactionInterceptor.java:46)
at org.jboss.proxy.SecurityInterceptor.invoke(SecurityInterceptor.java:45)
at org.jboss.proxy.ejb.StatelessSessionInterceptor.invoke(StatelessSessionInterceptor.java:100)
at org.jboss.proxy.ClientContainer.invoke(ClientContainer.java:85)
at $Proxy1.createAlert(Unknown Source)
However, if I create a connection outside of JBoss, I am able to execute the statement cleanly. Any idea of what I need to do to fix this problem ?
Regards
Rob Godley
I managed to fix this problem by running,
sp_procxmode <stored proc name>, 'anymode'
against the target db