Я пытаюсь использовать модель кэша для кэширования результатов, возвращаемых процедурой. Но каждый раз, когда я обращаюсь к БД, он хранит «SERIALIZABLE NULL OBJECT», а во второй раз, когда я бью по БД, он сообщает об отсутствии кэша и сохраняет «SERIALIZABLE NULL OBJECT». Я использую iBatis 2 и вызываю процедуру. XML файл выглядит так:
<cacheModel id="TestCache" type="MEMORY">
<flushInterval seconds="600"/>
<property value="10" name="size"/>
<property name="reference-type" value="WEAK"/>
</cacheModel>
<parameterMap id="getParameters" class="map">
<parameter property="result" javaType="com.package.dto.SomeDTO" jdbcType="ORACLECURSOR" mode="OUT" typeHandler="com.dao.SomeResultHandler"/>
<parameter property="userId" jdbcType="NUMERIC" mode="IN" />
<parameter property = "applicationDate" jdbcType="DATE" mode="IN"/>
</parameterMap>
<procedure id="getUserDetails" parameterMap="getParameters" cacheModel="TestCache">
{call pkcp_BPS.Get_User_Details (?,?,?)}
</procedure>