>From JDBC I can call the function using a CallableStatement.

...Yes, I am currently creating a StoredProcedure which simply
calls the function and returns the value.



> -----Original Message-----
> From: Larry Meadors [mailto:[EMAIL PROTECTED] 
> Sent: Thursday, December 16, 2004 3:27 PM
> To: Robert Dare; [EMAIL PROTECTED]
> Subject: Re: Calling Oracle Stored Functions:
> 
> 
> How do you call them from JDBC directly?
> 
> Can you call the function from a procedure in oracle? There 
> may be an easier way, but it seems like this would be an 
> immediate option for you.
> 
> Larry
> 
> >>> "Robert Dare" <[EMAIL PROTECTED]> 12/16/04 1:07 PM >>>
> 
> Hi All,
> 
> Is there a way to call Oracle functions (not stored 
> procedures) from iBATIS?
> 
> I have iBATIS and Oracle Stored Procedures working without 
> issue on Oracle 8i.  I have to support some Legacy procedures 
> that are written as Oracle stored functions.  
> 
> When I tried accessing these functions as stored procedures, I 
> got an Oracle invalid SQL exceptions:  (tried this with a 
> parameterMap, and parameter class with inline mapping with
> same results):
> 
>     <procedure id="confirmOrder" parameterMap="confirmation_params"
>                resultClass="java.lang.Long" >
>         { ?=call porders.createconfirmation (?,?,?)} 
>     </procedure>
> 
> 
> I tried accessing the function like this:
> 
>     <statement id="confirmOrderStmt"  
>                parameterClass="OrderConfirmation"
>                resultClass="java.lang.Long">
>         [CDATA[ 
>             begin
>             ? := porders.createconfirmation (
>                 #orderId#,
>                 #vendorId#,
>                 #vendorOrderId#); 
>             end;
>         ]]
>     </statement>
> 
> The above fails, Oracle complains about unbound parameters. 
> Changing the ? to #confirmationId# (a field in the 
> resultClass), results in an "invalid column type" sql 
> exception.  I also tried some inline mapping as in 
> #confirmationId:mode=OUT#, but that didn't help.
> 
> Regards,
> 
> Rob.
> 
> 
> 

Reply via email to