Re: ProcedureQuery problem

From: Marie Goutièr (sweetylol..otmail.com)
Date: Mon Mar 27 2006 - 12:11:54 EST

  • Next message: Andrus Adamchik: "Re: ProcedureQuery problem"

    Thanks
    you're it's quite ok but in Tomcat log there a little problem
    QueryLogger: === updated 1 row. appears without stopping.
    Is that normal???
    My proc doesn't update anything :'(
    I don't understand

    Thanks
    Marie

    >From: Andrus Adamchik <andru..bjectstyle.org>
    >Reply-To: cayenne-use..ncubator.apache.org
    >To: cayenne-use..ncubator.apache.org
    >Subject: Re: ProcedureQuery problem
    >Date: Mon, 27 Mar 2006 20:21:53 +0400
    >
    >Hi Marie,
    >
    >I noticed a mismatch between your procedure definition and Cayenne
    >mapping:
    >
    ><procedure name="GETEXAVALBR" returningValue="true">
    >
    >"returningValue" should only be "true" for Oracle *functions*, not
    >procedures. Try unchecking the corresponding checkbox in the Modeler.
    >
    >Andrus
    >
    >
    >
    >
    >On Mar 27, 2006, at 8:16 PM, Marie Goutière wrote:
    >
    >>Hello
    >>I've a problem pl/sql with a ProcedureQuery.
    >>here's my java code :
    >>ProcedureQuery query = new ProcedureQuery("GETEXAVALBR");
    >>query.addParameter("idDevice", deviceId);
    >>query.addParameter("codeMcoEnt", codeMco);
    >>query.addParameter("dateQuestionBR", dateReview);
    >>query.addParameter("codeForecast", forecastNum);
    >>
    >>try{
    >>List result =dgctContext.performQuery(query);
    >>}
    >>catch (Exception e){
    >>// PB dans la requete return null
    >>DgctLogger.error("DB Request GETEXIST2VALBR Failed");
    >>DgctLogger.error(e.toString());
    >>}
    >>
    >>My proc stoc returns only one field of an oracle table
    >>
    >>in my map.xml you can find :
    >><procedure name="GETEXAVALBR" returningValue="true">
    >><procedure-parameter name="valBr" type="VARCHAR" length="10"
    >>direction="out"/>
    >><procedure-parameter name="idDevice" type="VARCHAR" length="10"
    >>direction="in"/>
    >><procedure-parameter name="codeMcoEnt" type="VARCHAR" length="2"
    >>direction="in"/>
    >><procedure-parameter name="dateQuestionBR" type="VARCHAR" length="10"
    >>direction="in"/>
    >><procedure-parameter name="codeForecast" type="VARCHAR" length="10"
    >>direction="in"/>
    >></procedure>
    >>
    >>and the declation of the procedure is :
    >>
    >>CREATE OR REPLACE PROCEDURE GETEXAVALBR(
    >>valBr OUT varchar,
    >>idDevice IN varchar,
    >>codeMcoEnt IN varchar,
    >>dateQuestionBR IN varchar,
    >>codeForecast IN varchar
    >>) IS
    >>
    >>here is the trace in tomcat :
    >>QueryLogger: {? = call GETEXAVALBR(?, ?, ?, ?)} [bind: '[OUT]', 'NA485',
    >>'2', '01/02/2004', '18']
    >>I don't know if the binding is correct but I always have the same error
    >>although i'tried a lot of things.
    >>here is the PL/SQL error
    >>PLS-00306: wrong number or types of arguments in call to 'GETEXAVALBR'
    >>
    >>I've no Idea left
    >>Can anyone rescue me???? :))
    >>Thanks
    >>
    >>
    >>
    >



    This archive was generated by hypermail 2.0.0 : Mon Mar 27 2006 - 12:12:24 EST