friendly *bump*
On 2/11/08, Craig Tataryn <[EMAIL PROTECTED]> wrote:
>
> Hi, relatively new to iBatis and have a question about a stored procedure
> I need to call that has one IN parameter and several OUT parameters. The
> idea is, someone would call this stored proc to return exactly 1 customer
> from the database. The IN parameter corresponds to the customer's id, the
> OUT parameters consist of a bunch of properties on a Customer object as well
> as an extra STATUS parameter which does not exist on the Customer object,
> but instead indicates whether a retrieval problem happened (for instance the
> ID you passed to the stored proc didn't exist in the DB for any customers).
>
> So for instance, given the Customer class:
>
> public class Customer {
> private String name;
> private String email;
> private String gender;
> }
>
> And a stored proc that looked like this:
> CREATE OR REPLACE PROCEDURE CUSTOMER_RD
> -- read a record from the table CUSTOMER
> (
> CUST_ID IN NUMERIC,
> CUST_NAME OUT VARCHAR2,
> CUST_EMAIL OUT VARCHAR2,
> CUST_GENDER OUT CHAR,
> STATUS OUT NUMERIC
> )
> .
> .
> .
>
> I know how I could code an sqlMap such that each of OUT parameters get's
> populated into a Map entry, then I would manually iterate through the Map
> and populate a Customer object (disregarding the STATUS param for the time
> being), however what I'm hoping to do is instead get a map back from iBatis
> which looks like so:
>
> {
> "customer" => Customer
> "status" => int
> }
>
> Is this possible? If so, what might the corresponding sqlMap look like?
>
> Thanks
>