2016-02-02 86 views
1

我們有一個Informix存儲過程完美的作品,去數據庫,並返回美國的一些寄存器以各種各樣的價值。Informix的SP不返回映射豆的MyBatis

問題是當我們想使用的MyBatis此SP。我們有我們所調用的一個映射器調用存儲過程的方法的測試情況下,當我們執行它,它似乎沒有他的工作(列表的大小爲5,相同數量的寄存器的數據庫上的SP返回),但所有的寄存器都是空值。

我們認爲,映射不映射值豆,所以寄存器是空的。但我們不確定。

我們調用存儲過程像這樣

 <select id="requestAllCoberturasPlan" 
     parameterType="RequestCoberturasPlanEvent"   
     statementType="CALLABLE"> 

{ 
    #{lstCoberturasPlan, jdbcType=CURSOR, mode=OUT, resultMap=requestAllCoberturasPlanResultMap, javaType=java.sql.ResultSet} = 
    call sp_plan_cobervida 
    (
     #{cveLinea, jdbcType = SMALLINT, mode = IN}, 
     #{cveProd, jdbcType = SMALLINT, mode = IN}, 
     #{cvePlan, jdbcType = SMALLINT, mode = IN}, 
     #{idSolicitud, jdbcType = SMALLINT, mode = IN} 
    ) 
} 
    </select> 

有誰像面對一個問題?請,我們需要所有的幫助。

+0

你可以張貼了這個問題的工作的例子嗎? – Denis

回答

0

你不需要的程序調用的輸出參數的一部分。只需使用這

<select id="requestAllCoberturasPlan" 
    parameterType="RequestCoberturasPlanEvent"   
    statementType="CALLABLE" resultMap=requestAllCoberturasPlanResultMap> 
{call sp_plan_cobervida 
    (
    #{cveLinea, jdbcType = SMALLINT, mode = IN}, 
    #{cveProd, jdbcType = SMALLINT, mode = IN}, 
    #{cvePlan, jdbcType = SMALLINT, mode = IN}, 
    #{idSolicitud, jdbcType = SMALLINT, mode = IN} 
    ) 
} 
</select> 

看看這個教程:http://www.tutorialspoint.com/mybatis/mybatis_stored_procedures.htm