ibatis-user-java mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Brandon Goodin <brandon.goo...@gmail.com>
Subject Re: trouble mapping sybase stored procedure to object
Date Wed, 08 Jun 2005 01:51:54 GMT
We currently have a JIRA issue to provide support for multiple result sets.
http://issues.apache.org/jira/browse/IBATIS-28

In regards to the execute/executeQuery choice. The choice was made to
help support the use of oracle ref cursors. I'm not sure we would want
to change this in order to accomodate a bug in a JDBC driver.

Brandon

On 6/5/05, ds5j@excite.com <ds5j@excite.com> wrote:
> 
> Hi,
> 
> 
> 
> This is regarding the issue that occurs when a sybase stored procedure is mapped to an
object.
> 
> 
> 
> At first I thought this was an Ibatis issue because our stored procedure had an input
parameter and no output parameter and I thought Ibatis was getting confused.
> 
> 
> 
> This is not the case.
> 
> 
> 
> Unfortunately as the error was generic it took some to trace.  The error text focused
on the param mapping. e.g.soemthing like : Check the results (failed to retrieve results)
Check the parameters (set parameters failed).
> 
> 
> 
> The real issue seems to be a sybase bug.
> 
> 
> 
> A null pointer exception happens when the execute method is called  followed by getResultSet,
on the callable statement object, in the executeQueryProcedure().(in SqlExecutor.java)
> 
> 
> 
> But if I replace cs.execute(); and cs.getResultSet() with cs.executeQuery(); the code
works.
> 
> 
> 
> I was able to reproduce the problem outside of Ibatis. I have posted the bug as feedback
on sybase's site.  ( the issue exists even with the latest jdbc sybase driver (6.0))
> 
> 
> 
> For now callable statement won't work with sybase stps as execute/getResultSet results
in a null pointer exception.
> 
> 
> 
> I assume the decision to use execute followed by resultset has to do with multiple resultset
handling.
> 
> 
> 
> I have one remaining question which is : does Ibatis handle multiple sets like the following
: if a procedure does selects on different tables in one stored procedure will ibatis be able
to match the different result sets to different objects based on column names?
> 
> 
> 
> By looking at the code in SqlExecutor it seems not as I thought getMoreResultSets() would
have to be called to process multiple result sets and I do not see this method called at all
in the code.
> 
> 
> 
> please let me know if this is true,
> 
> 
> 
> thanks and thanks to Clinton for help/guidance.
> 
> 
> 
> Also I believe this resolves Ravi's post entitled : "Problem with stored procedure and
resultMap or resultClass?" ( sorry I couldn't figure out how to reply to this post.)
> 
> 
> 
> PS also is there an easy way to buid than what I did?:
> 
>  I created the directory structure as in the subversion and manually copied each file
to the right directory.  is there a zipped version of the files in the right directories with
the build scripts etc.?
> 
> 
> 
> thanks
> 
> also sorry for long response.
> 
> 
> 
> 
> 
> DS
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> _______________________________________________
> Join Excite! - http://www.excite.com
> The most personalized portal on the Web!
> 
> 
>

Mime
View raw message