在用SpringBatch 跑job的时候出现这个错误, 由于取数据的DB 是netezza, 框架可能支持的不是很全面,当然也可能是其他原因。

<bean id="reader_rdc"
class="org.springframework.batch.item.database.JdbcCursorItemReader"
scope="step">
<property name="dataSource" ref="rdc-datasource" />
<property name="sql">
<value>
<![CDATA[
SELECT DISTINCT
C.SAP_CUSTOMER_NO,
case
WHEN C.SAP_CUSTOMER_NO > 1 THEN C.SAP_CUSTOMER_NO + 10000000000
END AS SAP_CUSTOMER_NO_11_POS,
G.IOT_NAME,
--G.IMT_NAME,
CASE
WHEN G.ISO_COUNTRY_NAME = 'United States' THEN 'United States'
ELSE G.IMT_NAME
END AS IMT_NAME,
G.ISO_COUNTRY_NAME,
C.ISSUING_COUNTRY_NO,
C.SAP_DIM_ISO_COUNTRY_CODE,
C.MANDT,
C.CUST_NAME,
C.STREET_ADDRESS,
C.CUST_CITY,
C.CUST_STATE_PROV,
C.CUST_NO,
LENGTH(C.CUST_NO) AS CUST_NUM_LENGTH,
C.CUST_COUNTY_CODE,
H.DUNS_NO,
C.ENTERPRISE_NO,
C.MKT_AFFILIATE_NO,
C.DOM_CLIENT_ID,
SUBSTRING(C.GBL_BUY_GRP_ID,1,2) AS GBG_Mnemonic,
'1' AS RECORD_COUNT,
F.LEGAL_DOM_CLIENT_NAME, -- FROM SAPR3.LEGAL_DOM_CLIENT
C.GBL_CLIENT_ID,
C.GBL_ULT_CLIENT_ID,
C.DOM_BUY_GRP_ID,
C.GBL_BUY_GRP_ID,
C.SAP_DIM_BASE_TYPE,
C.SAP_DIM_BASE_COVID,
B.COV_CLIENT_TYPE,
D.COV_CLIENT_TYPE_DESC,
J.CAP_IND,
K.AUFSD AS ORDER_NO,
S.INDUSTRY_CODE,
S.INDUSTRY_NAME
FROM CUST.SAP_COVERAGE_CUSTOMER C
LEFT OUTER JOIN CUST.SAP_DIM_COVERAGE A
ON C.SAP_DIM_BASE_COVID = A.COV_ID
AND C.SAP_DIM_BASE_TYPE = A.COV_TYPE
LEFT OUTER JOIN SAPR3.V_COVERAGE_ID_CLIENT_TYPE B
ON A.COV_TYPE = B.COVTYPE
AND A.COV_ID = B.COVID
AND C.MANDT = B.MANDT
LEFT OUTER JOIN NZCCMS.CUST_SAP_DIM_ISO_COUNTRY G
ON C.SAP_DIM_ISO_COUNTRY_CODE = G.ISO_COUNTRY_CODE
LEFT OUTER JOIN SAPR3.COVERAGE_CLIENT_TYPE D
ON B.COV_CLIENT_TYPE = D.COV_CLIENT_TYPE
AND C.MANDT = D.MANDT
LEFT OUTER JOIN SAPR3.KDUNS H
ON C.MANDT = H.MANDT
AND C.SAP_CUSTOMER_NO = H.KUNNR
LEFT OUTER JOIN SAPR3.LEGAL_DOM_CLIENT F
ON C.DOM_CLIENT_ID = F.DOM_CLIENT_ID
AND C.MANDT = F.MANDT
LEFT OUTER JOIN SAPR3.KUNNR_EXT J
ON C.MANDT = J.MANDT
AND C.SAP_CUSTOMER_NO = J.KUNNR
LEFT OUTER JOIN SAPR3.KNA1 K
ON C.MANDT = K.MANDT
AND C.SAP_CUSTOMER_NO = K.KUNNR
LEFT OUTER JOIN NZCCMS.CUST_SAP_DIM_SIC_CODE S
ON C.SAP_DIM_UNSIC_CODE = S.UNSIC_CODE
WHERE
J.CAP_IND= 'Y'
AND C.MANDT = '100'
AND K.AUFSD NOT IN('75','90','93')
AND B.COV_CLIENT_TYPE IN ('R','C','E','D')
]]>
</value>
</property>
<property name="rowMapper">
<bean class="flow.RdcMapper" />
</property>
<property name="verifyCursorPosition">
<value>false</value>
</property>

</bean>

将 verifyCursorPosition 属性设成 false 即可。

org.springframework.dao.InvalidDataAccessResourceUsageException: Unexpected cursor position change. Spring Batch 错误的更多相关文章

  1. org.springframework.dao.InvalidDataAccessResourceUsageException: could not execute query; nested exception is org.hibernate.exception.SQLGrammarException: could not execute query

    原因: 这个问题的解决方案很简单,主要是因为数据库中不存在相关的表或者列. org.springframework.dao.InvalidDataAccessApiUsageException: Pa ...

  2. 报错org.springframework.dao.InvalidDataAccessResourceUsageException: could not extract ResultSet; SQL [n/a]; nested exception is org.hibernate.exception.SQLGrammarException: could not extract ResultSet"

    org.springframework.dao.InvalidDataAccessResourceUsageException: could not extract ResultSet; SQL [n ...

  3. 报错:org.springframework.dao.InvalidDataAccessResourceUsageException: could not execute statement; SQL [n/a]; nested exception is org.hibernate.exception.SQLGrammarException: could not execute statement

    org.springframework.dao.InvalidDataAccessResourceUsageException: could not execute statement; SQL [n ...

  4. 【异常】Caused by: java.lang.ClassNotFoundException: org.springframework.dao.DataIntegrityViolationException

    Caused by: java.lang.ClassNotFoundException: org.springframework.dao.DataIntegrityViolationException ...

  5. org.springframework.dao.DataIntegrityViolationException:

    数据库用的hibernate,开发工具用的myeclipse,使用开发工具连接数据库生成hibernate基于xml的po类,运行时报org.springframework.dao.DataInteg ...

  6. javaEE-----org.springframework.dao.InvalidDataAccessApiUsageException: Write operation

    org.springframework.dao.InvalidDataAccessApiUsageException: Write operations are not allowed in read ...

  7. org.springframework.dao.InvalidDataAccessApiUsageException: Parameter value [41] did not match expected type [java.lang.Integer (n/a)];

    题记:以前记录过一些自己遇到的BUG,这个行为,让我一看报错的提示信息就能定位到问题的所在,后来记得比较多了,好多是重复性的再加上比较忙就没有详细的记录了,今天的工作量比较小,就顺便记录一下,以便以后 ...

  8. org.springframework.dao.InvalidDataAccessApiUsageException:The given object has a null identifi的解决方案

    异常信息: org.springframework.dao.InvalidDataAccessApiUsageException: The given object has a null identi ...

  9. org.springframework.dao.InvalidDataAccessApiUsageException: Write operations are not allowed in read-only mode

    [spring]:org.springframework.dao.InvalidDataAccessApiUsageException: Write operations are not allowe ...

随机推荐

  1. 高性能MySQL笔记

    锁粒度:表锁.行级锁 表锁锁定整张表 隔离级别: 未提交读:事务中的修改,即使没有提交,对其他事务也是可见的.事务可以读取未提交的数据,也被称为脏读.实际应用中比较少用 提交读:一个事务提交之前,所做 ...

  2. RNN入门(4)利用LSTM实现整数加法运算

      本文将介绍LSTM模型在实现整数加法方面的应用.   我们以0-255之间的整数加法为例,生成的结果在0到510之间.为了能利用深度学习模型模拟整数的加法运算,我们需要将输入的两个加数和输出的结果 ...

  3. 使用xhprof会在nginx下报502 Bad Gateway错误

    使用xhprof会在nginx下报502 Bad Gateway错误 xhprof_enable()xhprof_enable(XHPROF_FLAGS_CPU + XHPROF_FLAGS_MEMO ...

  4. java体系架构

    java概念 java本身是一种面向对象的语言,最显著的特性有两方面,一是所谓的“书写一次,到处运行”(write once ,run anywhrer),能够非常容易的获得跨平台能力,另外就是垃圾收 ...

  5. Mac下写博客工具MarsEdit相关资料

    参考资料: https://www.maoshu.cc/967.html 下载地址: https://www.red-sweater.com/marsedit/ 博客园的配置: http://www. ...

  6. SpringBoot 之基础学习篇.

    一.概念简介 SpringBoot 的关键词是“约定俗成”,它根据长久以来的 Spring 开发配置经验,整理出一套适用.普遍.大家都认可的配置方案.所以 SpringBoot 的学习过程中心态一定要 ...

  7. JVM内存区域划分Eden Space,Survivor Space,Tenured Gen,Perm Gen

    jvm区域总体分两类,heap区和非heap区.heap区又分:Eden Space(伊甸园).Survivor Space(幸存者区).Tenured Gen(老年代-养老区). 非heap区又分: ...

  8. 51单片机定时器实现LED闪烁

    要启用一个定时器,先要开启定时器,然后产生中断 系统中断: 初始化程序应完成如下工作: 对TMOD赋值,以确定T0和T1的工作方式. 计算初值,并将其写入TH0.TL0或TH1.TL1. 中断方式时, ...

  9. sublime快捷方式小结

    插件 package control安装 代码地址:https://packagecontrol.io/installation //TEXT3 import urllib.request,os,ha ...

  10. for、for / in循环

    1.for循环 循环代码块一定的次数 <!DOCTYPE html> <html lang="en" dir="ltr"> <he ...