Greetings. I'm new at JBoss and am trying to get our application to run on it for production deployment.
For a quick synopsis, I have servlet classes that make calls to my EJB objects that sit in the JBoss server. The EJBs classes get a database connection from the local connection manager in order to interact with our database.
I am able to successfully get connections and make successful 'selects' to the database. *All my database calls are managed through stored procedures* However, when I call stored procs that do inserts and updates, I get the error message below... In other words, those stored procs do being and ends (commits).
15:13:38,459 INFO [ConfigManagerBean] com.sybase.jdbc.SybSQLException: Stored procedure 'mp_get_access_id' may be run only in unchained transaction mode. The 'SET CHAINED OFF' command will cause the current session to use unchained transaction mode.
15:13:38,460 ERROR [STDERR] com.sybase.jdbc.SybSQLException: Stored procedure 'mp_get_access_id' may be run only in unchained transaction mode. The 'SET CHAINED OFF' command will cause the current session to use unchained transaction mode.
I've researched all over the JBoss forum to find out what kind of things I can do to get past the problem. I know that it has to do with the autocommit set to true via the connection manager. I can't seem to change anything in either my EJB layer or with a JBoss configuration. I am successful if I make my own db connections.
I'm currently running JBoss 3.0.2 integrated with Tomcat 4.0.4. My Sybase dataserver is running 12.5 and I am using JConnect 5.5.
I've tried various versions of JBoss as well --
with the hope that this issue is remedied. I've seen some messages on the forum that suggest fixes in different distributions, but haven't been successful.
I've downloaded JBoss 3.2 beta, but have a new learning curve with the *ds.xml files.
Any suggestions would be greatly appreciated.
No more worries about this one. Ended up running this command on the stored procedures on my data server:
1> exec sp_procxmode <stored proc name>, "anymode"
This did the trick and will allow the stored procedure to run both in chained and unchained mode. Thanks.