You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@cocoon.apache.org by bu...@apache.org on 2003/06/03 15:11:35 UTC
DO NOT REPLY [Bug 20446] New: -
using get-string for an oracle output parameter
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=20446>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND
INSERTED IN THE BUG DATABASE.
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=20446
using get-string for an oracle output parameter
Summary: using get-string for an oracle output parameter
Product: Cocoon 2
Version: 2.0
Platform: PC
OS/Version: Windows NT/2K
Status: NEW
Severity: Major
Priority: Other
Component: core
AssignedTo: cocoon-dev@xml.apache.org
ReportedBy: m.tedford@kainos.com
I am calling an oracle stored proc, which works in SQL PLUS. It has many output
parameters and when I try to retrieve the numeric output parameters from the
stored proc via XSL, everything works fine, however when I try to retrieve an
output parameter, which is defined as a varachr2 in oracle and defined as a
string in XSL, everything stops working: The following is a sample of the code,
note when I leave the call out for getting the output parameter, which is a
string everything works as normal (I have added a note as to where the code
stops working, look for parameter advanceAA. All suggestions are welcome.
Thanks
Martina
I have used the following code:
<xsl:template match="letterslib:get-advance-for-loan-type">
<xsp:logic>
errorMessage="";
advanceDate="";
templateName="letterslib:get-advance-for-loan-type";
iPurchasePrice = 0;
iPropertyInsurance = 0;
iPropertyInsPremium = 0;
iASUInsurance = 0;
iASUInsPremium = 0;
iIndemnity = 0;
iArrangement = 0;
advanceType = "";
basisType = "";
advanceAA="";
String test="";
</xsp:logic>
<esql:execute-query>
<esql:call>{call
lg_pk_get_loan_details.p_get_advance_particulars(
<esql:parameter direction="in"
type="String"><xsp:expr>user_id</xsp:expr></esql:parameter>,
<esql:parameter direction="in"
type="String"><xsp:expr>loan_type</xsp:expr></esql:parameter>,
<esql:parameter direction="in"
type="String"><xsp:expr>agreement_id</xsp:expr></esql:parameter>,
<esql:parameter direction="out"
type="Double"></esql:parameter>,
<esql:parameter direction="out"
type="Double"></esql:parameter>,
<esql:parameter direction="out"
type="Double"></esql:parameter>,
<esql:parameter direction="out"
type="Double"></esql:parameter>,
<esql:parameter direction="out"
type="Double"></esql:parameter>,
<esql:parameter direction="out"
type="Double"></esql:parameter>,
<esql:parameter direction="out"
type="Double"></esql:parameter>,
<esql:parameter direction="out"
type="String"></esql:parameter>,
<esql:parameter direction="out"
type="String"></esql:parameter>)
}
</esql:call>
<esql:call-results>
<xsp:logic>
iPurchasePrice=<esql:get-double column="4" from-call="yes"/>;
iPropertyInsurance=<esql:get-double column="5" from-call="yes"/>;
iPropertyInsPremium=<esql:get-double column="6" from-call="yes"/>;
iASUInsurance=<esql:get-double column="7" from-call="yes"/>;
iASUInsPremium=<esql:get-double column="8" from-call="yes"/>;
iIndemnity=<esql:get-double column="9" from-call="yes"/>;
iArrangement=<esql:get-double column="10" from-call="yes"/>;
advanceAA=<esql:get-string column ="11" from-call="yes"/>; --Note this is the
line which prevents the URI from working plus I get no meaningful error
message, without this line everything works fine
</xsp:logic>
</esql:call-results>
<PurchasePrice><xsp:expr>iPurchasePrice</xsp:expr></PurchasePrice>
<PropertyInsurance><xsp:expr>iPropertyInsurance</xsp:expr></PropertyInsu
rance>
<PropertyInsPremium><xsp:expr>iPropertyInsPremium</xsp:expr></PropertyIn
sPremium>
<ASUInsurance><xsp:expr>
iASUInsurance</xsp:expr></ASUInsurance>
<ASUInsurancePremium><xsp:expr>
iASUInsPremium</xsp:expr></ASUInsurancePremium>
<Indemnity><xsp:expr> iIndemnity</xsp:expr></Indemnity>
<Arrangement><xsp:expr>
iArrangement</xsp:expr></Arrangement>
<Advance><xsp:expr>advanceAA</xsp:expr> </Advance>
<esql:error-results>
<xsp:logic>
errorMessage=<esql:get-message/>;
</xsp:logic>
<xsl:call-template name="write-error"/>
</esql:error-results>
</esql:execute-query>
</xsl:template>