使用Ibatis 2.3检索CLOB数据

时间:2011-09-05 04:36:09

标签: java oracle ibatis

我正在尝试从oracle数据库中检索clob数据,如 reports.xml 所示。我正在使用oracle jdbc驱动程序版本“ Oracle JDBC驱动程序版本 - 10.0.2.0.0 “。以下是我收到的错误,请告诉我,如何解决此问题。

2011-08-31 13:03:40,790 WARN  [org.apache.struts.chain.commands.AbstractExceptionHandler] (http-10.12.230.222-8080-1) Unhandled exception
com.ibatis.common.jdbc.exception.NestedSQLException:   
--- The error occurred in sa/mobily/telecop/dao/config/GenericReportQuery.xml.  
--- The error occurred while applying a parameter map.  
--- Check the runReportQuery-InlineParameterMap.  
--- Check the parameter mapping for the 'QUERY' property.  
--- Cause: java.sql.SQLException: Data size bigger than max size for this type: 6411
    at com.ibatis.sqlmap.engine.mapping.statement.MappedStatement.executeQueryWithCallback(MappedStatement.java:201)
    at com.ibatis.sqlmap.engine.mapping.statement.MappedStatement.executeQueryForList(MappedStatement.java:139)
    at com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.queryForList(SqlMapExecutorDelegate.java:567)
    at com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.queryForList(SqlMapExecutorDelegate.java:541)
    at com.ibatis.sqlmap.engine.impl.SqlMapSessionImpl.queryForList(SqlMapSessionImpl.java:118)
    at com.ibatis.sqlmap.engine.impl.SqlMapClientImpl.queryForList(SqlMapClientImpl.java:94)

reports.xml

<select id="getReportQuery"  parameterClass="java.util.HashMap" resultMap="queryStringData" >
        select REPORT_QUERY 
         from frd_rep_fw_reports where report_id=#REP_ID# AND report_type='P' 
</select> 
<resultMap id="queryStringData" class="java.util.HashMap">
  <result column="REPORT_QUERY" property="QRY_BODY" javaType="java.lang.String" jdbcType="CLOB"  typeHandler="com.ibatis.sqlmap.engine.type.ClobTypeHandlerCallback" />
</resultMap>    

sqlmapconfig.xml

<dataSource type="JNDI">
        <property name="DataSource" value="${connection.datasource}"/>
        <property name="Driver.SetBigStringTryClob" value="true"/>
    </dataSource>

1 个答案:

答案 0 :(得分:1)

获取最新的ojdbc14.jar,我应该工作。另请告诉我如何定义表frd_rep_fw_reports