java - How to define the beans for wrapperRunIdIncrementer and recoveryFlowDecider. Which API class it belongs? -
<batch:job id="recoverywrapper" incrementer="wrapperrunidincrementer" restartable="true"> <batch:decision id="recoveryflowdecision" decider="recoveryflowdecider"> <batch:next on="first_run" to="defineparametersonfirstrun" /> <batch:next on="recover" to="recover.batchjob " /> <batch:next on="current" to="current.batchjob " /> </batch:decision> <batch:step id="defineparametersonfirstrun" next="current.batchjob"> <batch:tasklet ref="defineparametersonfirstruntasklet"/> </batch:step> <batch:step id="recover.batchjob " next="current.batchjob"> <batch:job ref="batchjob" job-launcher="joblauncher" job-parameters-extractor="jobparametersextractor" /> </batch:step> <batch:step id="current.batchjob" > <batch:job ref="batchjob" job-launcher="joblauncher" job-parameters-extractor="jobparametersextractor" /> </batch:step> org.springframework.beans.factory.beancreationexception: error creating bean name 'defineparametersonfirstrun': cannot resolve reference bean 'pricedataloaderjob' while setting bean property 'job'; nested exception org.springframework.beans.factory.beancreationexception: error creating bean name 'pricedataloaderjob': cannot create inner bean '(inner bean)#4b7dc788' of type [org.springframework.batch.core.configuration.xml.simpleflowfactorybean] while setting bean property 'flow'; nested exception org.springframework.beans.factory.beancreationexception: error creating bean name '(inner bean)#4b7dc788': cannot create inner bean '(inner bean)#1800a575' of type [org.springframework.batch.core.job.flow.support.statetransition] while setting bean property 'statetransitions' key [3]; nested exception org.springframework.beans.factory.beancreationexception: error creating bean name '(inner bean)#1800a575': cannot create inner bean '(inner bean)#1458ed9c' of type [org.springframework.batch.core.job.flow.support.state.stepstate] while setting constructor argument; nested exception org.springframework.beans.factory.beancreationexception: error creating bean name '(inner bean)#1458ed9c': cannot resolve reference bean 'restart' while setting constructor argument; nested exception org.springframework.beans.factory.beancreationexception: error creating bean name 'restart': cannot resolve reference bean 'recoverywrapper' while setting bean property 'job'; nested exception org.springframework.beans.factory.beancreationexception: error creating bean name 'recoverywrapper': cannot create inner bean '(inner bean)#130e116b' of type [org.springframework.batch.core.configuration.xml.simpleflowfactorybean] while setting bean property 'flow'; nested exception org.springframework.beans.factory.beancreationexception: error creating bean name '(inner bean)#130e116b': cannot create inner bean '(inner bean)#e383572' of type [org.springframework.batch.core.job.flow.support.statetransition] while setting bean property 'statetransitions' key [0]; nested exception org.springframework.beans.factory.beancreationexception: error creating bean name '(inner bean)#e383572': cannot create inner bean '(inner bean)#5ddf0d24' of type [org.springframework.batch.core.job.flow.support.state.decisionstate] while setting constructor argument; nested exception org.springframework.beans.factory.beancreationexception: error creating bean name '(inner bean)#5ddf0d24': cannot resolve reference bean 'recoveryflowdecider' while setting constructor argument; nested exception org.springframework.beans.factory.nosuchbeandefinitionexception: no bean named 'recoveryflowdecider' defined @ org.springframework.beans.factory.support.beandefinitionvalueresolver.resolvereference(beandefinitionvalueresolver.java:359) @ org.springframework.beans.factory.support.beandefinitionvalueresolver.resolvevalueifnecessary(beandefinitionvalueresolver.java:108) @ org.springframework.beans.factory.support.abstractautowirecapablebeanfactory.applypropertyvalues(abstractautowirecapablebeanfactory.java:1469) @ org.springframework.beans.factory.support.abstractautowirecapablebeanfactory.populatebean(abstractautowirecapablebeanfactory.java:1214) @ org.springframework.beans.factory.support.abstractautowirecapablebeanfactory.docreatebean(abstractautowirecapablebeanfactory.java:537) @ org.springframework.beans.factory.support.abstractautowirecapablebeanfactory.createbean(abstractautowirecapablebeanfactory.java:476) @ org.springframework.beans.factory.support.abstractbeanfactory$1.getobject(abstractbeanfactory.java:303) @ org.springframework.beans.factory.support.defaultsingletonbeanregistry.getsingleton(defaultsingletonbeanregistry.java:230) @ org.springframework.beans.factory.support.abstractbeanfactory.dogetbean(abstractbeanfactory.java:299) @ org.springframework.beans.factory.support.abstractbeanfactory.getbean(abstractbeanfactory.java:194) @ org.springframework.beans.factory.support.defaultlistablebeanfactory.preinstantiatesingletons(defaultlistablebeanfactory.java:743) @ org.springframework.context.support.abstractapplicationcontext.finishbeanfactoryinitialization(abstractapplicationcontext.java:757) @ org.springframework.context.support.abstractapplicationcontext.refresh(abstractapplicationcontext.java:480) @ org.springframework.context.support.classpathxmlapplicationcontext.<init>(classpathxmlapplicationcontext.java:139) @ org.springframework.context.support.classpathxmlapplicationcontext.<init>(classpathxmlapplicationcontext.java:93) @ com.tcs.retail.store.dataloader.main.dataloaderservicestart.rundataloaderservice(dataloaderservicestart.java:41) @ com.tcs.retail.store.dataloader.main.dataloaderservicestart.main(dataloaderservicestart.java:115) i'm facing there no bean definition incrementer. need restart job left record , start job there.
is there other examples restart thing spring batch.
Comments
Post a Comment