ibatis-user-java mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Mike Fagan <mfa...@tde.com>
Subject Re: prevent caching of resultMap
Date Tue, 05 Apr 2005 22:15:11 GMT
Karen,

Thanks that worked - I did have to hack the DTD to add the remapResults 
attribute for procedure tag.

Karen Koch wrote:

>Mike,
>
>Try adding remapResults="true" to the procedure declaration:
>
>    <procedure id="queryRecords" resultClass="java.util.HashMap"
>parameterMap="queryParameters" remapResults="true">
>         { ? = call RECORDSET.getPagedRecordCursor(?, ?, ?, ?, ?, ?) }
>     </procedure>
>
>I'm certainly not positive this is the answer, but this helped us with a
>similar problem (wasn't a procedure, just a select statement).
>
>Karen
>--- Mike Fagan <mfagan@tde.com> wrote:
>  
>
>>Hi,
>>
>>I have a stored function that returns a refcursor with the different 
>>columns based on passed in parameters.
>>My problem is that IBATIS is caching the column names from the first 
>>call to this stored function causing later calls with a different 
>>refcursor definition to fail due to different columns returned. I have 
>>set cacheModelsEnabled to false and was wondering if I am missing 
>>another config setting. Using version 2.0.9
>>
>>Here is my sqlMap:
>>
>>    <parameterMap id="queryParameters" class="map" >
>>        <parameter property="result" jdbcType="ORACLECURSOR" mode="OUT"/>
>>        <parameter property="user" jdbcType="NUMERIC" javaType="long" 
>>mode="IN" />
>>        <parameter property="resultid" jdbcType="NUMERIC" 
>>javaType="long" mode="IN" />
>>        <parameter property="startidx" jdbcType="NUMERIC" javaType="int" 
>>mode="IN" />
>>        <parameter property="endidx" jdbcType="NUMERIC" javaType="int" 
>>mode="IN" />
>>        <parameter property="fields" jdbcType="VARCHAR" 
>>javaType="java.lang.String" mode="IN" />
>>        <parameter property="total" jdbcType="NUMERIC" javaType="long" 
>>mode="OUT" />
>>    </parameterMap>
>>
>>    <procedure id="queryRecords" resultClass="java.util.HashMap" 
>>parameterMap="queryParameters" >
>>        { ? = call RECORDSET.getPagedRecordCursor(?, ?, ?, ?, ?, ?) }
>>    </procedure>
>>
>>Thanks,
>>Mike Fagan
>>
>>
>>
>>    
>>
>
>  
>


Mime
View raw message