You are viewing a plain text version of this content. The canonical link for it is here.
Posted to ojb-user@db.apache.org by jr...@aep.com on 2003/08/05 20:52:35 UTC

Problem with broker.accesslayer.SqlBasedIterator

Thomas/Armin,

We are experiencing a problem when running a QueryBySQL query using the DB2
OS/390 drivers.  I have searched the archives for this problem, but have
been unable to find any other hits along these lines.  The problem appears
to be traced back to line 85 of broker.accesslayer.SqlBasedIterator:

        m_rsAndStmt = broker.serviceJdbcAccess().executeSQL(sqlStatement,
cld, Query.SCROLLABLE);

This statement appears to assume that the driver supports scrollable
cursors.  We are finding that the DB2 OS390 driver does not support
scrollable cursors per the following text taken from the latest DB2 v7.1
OS390 patch notes:

  Added code for the JDBC 2.0 signatures for methods
  Connection.prepareStatement and Connection.prepareCall
  which include the ResultSetType and ResultSetConcurrency
  parameters.  The only parameter values supported are
  ResultSet.TYPE_FORWARD_ONLY and ResultSet.CONCUR_READ_ONLY,
  respectively.  (41720)


Yet on line 241 of broker.accesslayer.StatementsForClassImpl, if the
scrollable parameter is true, the ResultSet.TYPE_SCROLL_INSENSITIVE is
toggled.
                result = con.prepareStatement(sql,
                        scrollable ? ResultSet.TYPE_SCROLL_INSENSITIVE :
ResultSet.TYPE_FORWARD_ONLY,
                        ResultSet.CONCUR_READ_ONLY);

It looks like we can turn down the driver level to JDBC 1.0 and work around
this problem, but the driver that we are using is supposed to be LEVEL 2.0
driver.

What are your ideas on the best way for us to work around this?

Thanks!
Jason



---------------------------------------------------------------------
To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
For additional commands, e-mail: ojb-user-help@db.apache.org