У меня есть следующее отображение iBatis для хранимой процедуры Oracle, которая возвращает значение true / false.
<resultMap id="isAuthorizedResult" class="java.lang.Boolean">
<result property="isAuthorized" column="isAuthorized"/>
</resultMap>
<parameterMap id="isAuthorizedCall" class="map">
<parameter property="prgType" jdbcType="String" javaType="java.lang.String" mode="IN"/>
<parameter property="parCode" jdbcType="String" javaType="java.lang.String" mode="IN"/>
<parameter property="userId" jdbcType="String" javaType="java.lang.String" mode="IN"/>
<parameter property="Result0" jdbcType="ORACLECURSOR" javaType="java.sql.ResultSet" mode="OUT" resultMap="isAuthorizedResult"/>
</parameterMap>
<procedure id="isAuthorized" parameterMap="isAuthorizedCall">{call chk_user_ocpncy (?,?,?,?) }</procedure>
Я вызываю отображение из моего кода Java следующим образом:
getSqlMapClientTemplate().queryForObject("reexamination.isAuthorized", paramMap);
Однако я получаю следующую ошибку ...
Fail to convert to internal representation; nested exception is com.ibatis.common.jdbc.exception.NestedSQLException:
Что я делаю не так? мы не можем сохранить логическое значение непосредственно в курсоре?