I haven't had a chance to test the 2.3.x release. Has the problem with Oracle ref cursors been fixed then? It's not that we couldn't move forward (we discovered that stored functions work just fine nearly a year ago, and that's our standard approach); in fact we have 6 projects using the same approach.

Jeff Stahl

Clinton Begin wrote:
It shouldn't... :-/

Can you provide a failing test case?

On Tue, Aug 12, 2008 at 3:57 PM, Jeff Stahl <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>> wrote:

    iBATIS seems to have a problem with handling RefCursors as OUT
    parameters in stored procedures.  I don't know how you're
    attempting to use iBATIS in your project, but in house here we've
    found that stored functions (where the Cursor is returned from the
    function and not fetched into an out parameter) works best.

    Hope This Helps,

    Jeff Stahl


    Ian Zabel wrote:

        Hello,

        Using the latest build of iBATIS and Oracle REF Cursors, we're
        running
        into a problem with certain rows not coming back in the
        ResultSet. It
        seems to be certain data in the rows that makes them not return.

        For example, we have a column called INTERNAL_INVOICE_NBR.
        With the
        following values in that column, ROW 1 does _not_ return in the
        ResultSet from the REF Cursor when using iBATIS.
        ROW 1: mts - Sample Invoice, b2325
        ROW 2: mts - New Invoice, b2330

        However, if we update the column in ROW 1 with the value from
        ROW 2,
        then the row returns fine.

        Also, when using straight JDBC, the rows are returned.

        I've tried disabling cacheModels, enhancement, and
        lazyLoading, to no
        avail. When debugging into the iBATIS
        SqlExecutor.retrieveOutputParameters method, the ResultSet that it
        gets on line 399 does not include the row. In fact, if this
        row is the
        only row returned by the query, the ResultSet has no results
        at all.

        Any ideas? I'm really confused because it works fine with JDBC
        using
        the same connection as iBATIS, and if we change the data somewhat,
        then it returns fine.

        Thanks,
        Ian.



Reply via email to