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 <[EMAIL PROTECTED]> 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 > > >