我正在尝试从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>
答案 0 :(得分:1)
获取最新的ojdbc14.jar,我应该工作。另请告诉我如何定义表frd_rep_fw_reports