My end goal is to call OracleResultSet specific methods in WebSphere 5.1.x
How can I do this in WebSphere? It appears that WebSphere wraps ResultSet objects with its own: WSJdbcResultSet
JBoss wraps ResultSet objects with "WrappedResultSet" and has a method called "getUnderlyingResultSet()" which I can call to obtain the OracleResultSet and thus call OracleResultSet specific methods.
But "WSJdbcResultSet" has no such method! That's nice!
I tried using WSCallHelper.jdbcCall() to call an OracleResultSet specific method and that didn't work either. I received an SQLException: Invalid Caller Type: com.ibm.ws.rsadapter.jdbc.WSJdbcResultSet
But WSJdbcResultSet is the object wrapping the OracleResultSet on which I would like to call a method, so why would that be the invalid caller? Couldn't find any help on Google for that one.
So does anyone know how to obtain, or call methods on, the OracleResultSet object wrapped by WebSphere's WSJdbcResultSet object?
I looked around in the "JDBC Providers" section in the WebSphere admin console and couldn't find anywhere to configure WebSphere to basically not wrap the Oracle JDBC Driver classes with its own. Did I miss something?
No, I wasn't able to cast the returned 'ResultSet' because the object implementing the ResultSet interface in this case is WebSphere's WSJdbcResultSet and this object wraps OracleResultSet so I received a ClassCastException in my first attempt to obtain OracleResultSet.
I finally found some help on 'da web' and ended up getting the connection from the connection pool and then called:
to obtain a reference to the OracleConnection and then I was able to get to the OracleResultSet and call its methods.