Hello All,
I'm trying to execute a simple example in db2 using CommandLineJobRunner
my batch-db2.propertis are defined as bellow.
batch.jdbc.driver=com.ibm.db2.jcc.DB2Driver
batch.jdbc.url=jdbc:db2://db2dev1:50000/DB2DF
batch.jdbc.user=@DB2SLCD
batch.jdbc.password=aaaaa
batch.schema=
#batch.jndi.name=jdbc/dscapp/db2
batch.naming.factory.initial=
batch.naming.provider.url=
batch.schema.script=schema-db2.sql
batch.business.schema.script=business-schema-db2.sql
batch.database.incrementer.class=org.springframewo rk.jdbc.support.incrementer.DB2SequenceMaxValueInc rementer
batch.lob.handler.class=org.springframework.jdbc.s upport.lob.DefaultLobHandler.

When I run the application, I'm getting the following exception. It is complaining about "sequence value not found". In fact I created only tables in db2 but not sequences,my db2 doesn't support it.

17:08:46,267 INFO main SimpleJobLauncher:130 - No TaskExecutor has been set, defaulting to synchronous executor.
17:08:46,533 INFO main CommandLineJobRunner:191 - XML Application Context is loaded
17:08:46,533 INFO main CommandLineJobRunner:203 - Job Name islistJob
17:08:46,814 ERROR main CommandLineJobRunner:212 - Job Terminated in error:
org.springframework.dao.DataAccessResourceFailureE xception: Could not obtain sequence value; nested exception is com.ibm.db2.jcc.c.SqlException: DB2 SQL error: SQLCODE: -4700, SQLSTATE: 56038, SQLERRMC: null
at org.springframework.jdbc.support.incrementer.Abstr actSequenceMaxValueIncrementer.getNextKey(Abstract SequenceMaxValueIncrementer.java:78)
at org.springframework.jdbc.support.incrementer.Abstr actDataFieldMaxValueIncrementer.nextIntValue(Abstr actDataFieldMaxValueIncrementer.java:121)
at org.springframework.batch.core.repository.dao.Jdbc JobInstanceDao.createJobInstance(JdbcJobInstanceDa o.java:67)
at org.springframework.batch.core.repository.support. SimpleJobRepository.createJobExecution(SimpleJobRe pository.java:184)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Nativ e Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Native MethodAccessorImpl.java:79)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(De legatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:618)
at org.springframework.aop.support.AopUtils.invokeJoi npointUsingReflection(AopUtils.java:310)
at org.springframework.aop.framework.ReflectiveMethod Invocation.invokeJoinpoint(ReflectiveMethodInvocat ion.java:182)
at org.springframework.aop.framework.ReflectiveMethod Invocation.proceed(ReflectiveMethodInvocation.java :149)
at org.springframework.transaction.interceptor.Transa ctionInterceptor.invoke(TransactionInterceptor.jav a:106)
at org.springframework.aop.framework.ReflectiveMethod Invocation.proceed(ReflectiveMethodInvocation.java :171)
at org.springframework.aop.framework.JdkDynamicAopPro xy.invoke(JdkDynamicAopProxy.java:204)
at $Proxy0.createJobExecution(Unknown Source)
at org.springframework.batch.core.launch.support.Simp leJobLauncher.run(SimpleJobLauncher.java:79)
at org.springframework.batch.core.launch.support.Comm andLineJobRunner.start(CommandLineJobRunner.java:2 08)
at org.springframework.batch.sample.quartz.CommandLin eLauncher.main(CommandLineLauncher.java:24)
Caused by:
com.ibm.db2.jcc.c.SqlException: DB2 SQL error: SQLCODE: -4700, SQLSTATE: 56038, SQLERRMC: null
at com.ibm.db2.jcc.c.fg.e(fg.java:1596)
at com.ibm.db2.jcc.c.fg.a(fg.java:1206)
at com.ibm.db2.jcc.b.gb.g(gb.java:140)
at com.ibm.db2.jcc.b.gb.a(gb.java:39)
at com.ibm.db2.jcc.b.w.a(w.java:34)
at com.ibm.db2.jcc.b.vb.g(vb.java:139)
at com.ibm.db2.jcc.c.fg.n(fg.java:1177)
at com.ibm.db2.jcc.c.fg.a(fg.java:1832)
at com.ibm.db2.jcc.c.fg.a(fg.java:473)
at com.ibm.db2.jcc.c.fg.executeQuery(fg.java:457)
at org.apache.commons.dbcp.DelegatingStatement.execut eQuery(DelegatingStatement.java:205)
at org.springframework.jdbc.support.incrementer.Abstr actSequenceMaxValueIncrementer.getNextKey(Abstract SequenceMaxValueIncrementer.java:69)
... 17 more


************************************************** *****


Now I tried again by adding the following property in batch-db2.propertis.
incrementerParent.nextKey =1
However, it is complaining that, nextKey is an invalid property.Exception is as follows.


org.springframework.beans.InvalidPropertyException : Invalid property 'nextKey' of bean class [org.springframework.jdbc.support.incrementer.DB2Se quenceMaxValueIncrementer]: No property 'nextKey' found
at org.springframework.beans.BeanWrapperImpl.convertF orProperty(BeanWrapperImpl.java:382)
at org.springframework.beans.factory.support.Abstract AutowireCapableBeanFactory.convertForProperty(Abst ractAutowireCapableBeanFactory.java:1288)
at org.springframework.beans.factory.support.Abstract AutowireCapableBeanFactory.applyPropertyValues(Abs tractAutowireCapableBeanFactory.java:1249)
at org.springframework.beans.factory.support.Abstract AutowireCapableBeanFactory.populateBean(AbstractAu towireCapableBeanFactory.java:1010)
at org.springframework.beans.factory.support.Abstract AutowireCapableBeanFactory.doCreateBean(AbstractAu towireCapableBeanFactory.java:472)
... 15 more


Please suggest the right way to fix this problem.
Thanks