У меня есть следующее сопоставление iBatis для хранимой процедуры Oracle, которая возвращает значение true/false.iBatis mapping for oracle cursor
<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:
Что я делаю неправильно? не можем ли мы сохранить логическое значение непосредственно в курсор?