Hi Jeremy, Thanks a lot for the quick response, I took some time to figure out the missing jar file "*jta.jar*", this file is required to establish an XA transaction connection to Oracle 11g DB. As soon as I copied the file to the jruby/lib folder from oracle client installation folder, I was able to successfully connect through XA transaction in torquebox a Jruby based rack web server.
Thanks & Regards, Balaji On Monday, June 4, 2012 3:13:10 AM UTC+5:30, Jeremy Evans wrote: > > On Sunday, June 3, 2012 1:16:00 AM UTC-7, Balaji Mohandas wrote: >> >> Hello Sequel team, >> >> >> Currently I am working on a solution to migrate an existing Java web >> app which is more dependent on Oracle Pl/SQL stored procs for most of >> its business logics, onto a Jruby platform, >> >> Looking thru all existing frameworks on Jruby, I thought it would be >> better option to use Sinatra & sequel ORM stack which has good support >> for DB stored procs, cursors etc. >> >> Since TBox provides a very good enterprise support & compatability for >> Jruby & Rack applications, I choose TBox as a platform for hosting >> migrated app. >> >> While working on a POC, I recently faced an issue, when connecting to >> Oracle DB from Sinatra app from TBox, which otherwise works well while >> running independantly as simple rack app or thru IRB. >> >> Working on Windows XP with following gems, connecting to Oracle 11g DB >> server, >> >> json (1.7.3 java) >> mail (2.4.4) >> mime-types (1.18) >> multi_json (1.3.5) >> polyglot (0.3.3) >> rack (1.4.1) >> rack-cache (1.2) >> rack-protection (1.2.0) >> rack-ssl (1.3.2) >> rack-test (0.6.1) >> >> rake (0.8.7) >> >> rdoc (3.12) >> sequel (3.35.0) >> sinatra (1.3.2) >> >> sources (0.0.1) >> sprockets (2.1.3) >> thor (0.15.0, 0.14.6) >> tilt (1.3.3) >> torquebox (2.0.3) >> torquebox-cache (2.0.3 java) >> torquebox-capistrano-support (2.0.3) >> torquebox-configure (2.0.3 java) >> torquebox-core (2.0.3 java) >> torquebox-messaging (2.0.3 java) >> torquebox-naming (2.0.3 java) >> torquebox-no-op (2.0.3) >> torquebox-rake-support (2.0.3) >> torquebox-security (2.0.3 java) >> torquebox-stomp (2.0.3) >> torquebox-transactions (2.0.3) >> torquebox-web (2.0.3 java) >> treetop (1.4.10) >> tzinfo (0.3.33) >> >> ========================================================================================= >> >> >> HTTP Status 500 - >> type Exception report >> >> message >> description The server encountered an internal error () that prevented >> it from fulfilling this request. >> >> exception >> javax.servlet.ServletException: org.jruby.exceptions.RaiseException: >> (DatabaseConnectionError) NativeException: >> java.lang.NoClassDefFoundError: javax/transaction/xa/XAResource >> NativeException: java.lang.NullPointerException: null >> org.torquebox.web.servlet.RackFilter.doRack(RackFilter.java:117) >> org.torquebox.web.servlet.RackFilter.doFilter(RackFilter.java:101) >> org.torquebox.web.servlet.RackFilter.doFilter(RackFilter.java:72) >> >> root cause >> org.jruby.exceptions.RaiseException: (DatabaseConnectionError) >> NativeException: java.lang.NoClassDefFoundError: javax/transaction/xa/ >> XAResource >> NativeException: java.lang.NullPointerException: null >> ConnectionPool.make_new(c:/TorqueBox/jruby/lib/ruby/gems/1.8/gems/ >> sequel-3.35.0/lib/sequel/connection_pool.rb:103) >> > > This error happens when attempting to connect to the Oracle database > through JDBC. However, the does not appear to be caused by Sequel itself, > but some problem in JRuby/Java/JDBC. For some reason, it can't find that > class definition, and that causes the connection to fail. I don't have any > experience with Torquebox, or any production JRuby experience, so I'm > afraid I can't be much more help than that. > > Your best bet for fixing this is to figure out how to get a working JDBC > connection (outside of Sequel). If you are able to do so, post the steps > required to get a working JDBC connection, and I should be able to figure > out a way to make it work in Sequel. > > Jeremy > -- You received this message because you are subscribed to the Google Groups "sequel-talk" group. To view this discussion on the web visit https://groups.google.com/d/msg/sequel-talk/-/SQQAQ7jUDU0J. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/sequel-talk?hl=en.
