2009-10-07 131 views
2

誰能告訴我什麼是錯的? 我有兩個過程和兩個映射。一個正常工作,另一個失敗。 這一個正常工作:ibatis輸入/輸出參數問題

<parameterMap id="mapping-descriptions" class="java.util.Map"> 
     <parameter property="id" javaType="java.lang.Long" jdbcType="NUMBER" mode="IN"/> 
     <parameter property="lang" javaType="java.lang.String" jdbcType="VARCHAR" mode="IN"/> 
     <parameter property="shortDesc" javaType="java.lang.String" jdbcType="VARCHAR" mode="OUT"/> 
     <parameter property="fullDesc" javaType="java.lang.String" jdbcType="VARCHAR" mode="OUT"/> 
    </parameterMap> 
<procedure id="get-description" 
     parameterMap="mapping-descriptions"> 
     {call COM_DESCRIPTION_PKG.get_desc(?,?,?,?)} 
</procedure> 

而這一次失敗:

<parameterMap id="mapping-description-modifiable" class="java.util.Map"> 
     <parameter property="id" javaType="java.lang.Long" jdbcType="NUMBER" mode="INOUT"/> 
     <parameter property="lang" javaType="java.lang.String" jdbcType="VARCHAR" mode="IN"/> 
     <parameter property="shortDesc" javaType="java.lang.String" jdbcType="VARCHAR" mode="IN"/> 
     <parameter property="fullDesc" javaType="java.lang.String" jdbcType="VARCHAR" mode="IN"/> 
     <parameter property="modify" javaType="boolean" jdbcType="NUMBER" mode="IN"/> 
    </parameterMap> 
<procedure id="add-description" 
     parameterMap="mapping-description-modifiable"> 
     {call COM_DESCRIPTION_PKG.add_desc(?,?,?,?,?)} 
</procedure> 

與此異常:

--- The error occurred while executing update procedure. 
--- Check the {call COM_DESCRIPTION_PKG.add_desc(?,?,?,?,?)}. 
--- Check the output parameters (register output parameters failed). 
--- Cause: java.sql.SQLException: Invalid column type: -99999999 

我不明白這有什麼錯第二程序和/或它的映射。這可能是「INOUT」的一些問題嗎?

回答

0

您爲INOUT參數傳遞了什麼值? 我的猜測是你需要爲它提供一個默認值。

+0

我試圖通過一個默認值,但它並沒有幫助 – mykola

5

我試圖傳遞一個默認值,但它並沒有幫助


它的工作!只需將id屬性的jdbcType更改爲NUMERIC即可使用!不幸的是,我不再需要它了。 :)