0
我在項目中使用以下設置作爲作業定義。春季批次SkipPolicy未使用
在該項目上,批處理作業在數據庫中定義。下面的xml-job定義用作在運行時創建所有這些批處理作業的模板。
這工作正常,除了在數據處理器中BeanCreationException的情況。發生此異常時,不會調用跳過策略,而是立即終止該批次。
這可能是什麼原因?我該怎麼做才能讓dataProcessor中的每個異常都會使用SkipPolicy? 感謝很多提前 基督教
版本:春季批次3.0.7
<batch:job id="MassenGevoJob" restartable="true">
<batch:step id="selectDataStep" parent="selectForMassenGeVoStep" next="executeProcessorStep" />
<batch:step id="executeProcessorStep"
allow-start-if-complete="true" next="decideExitStatus" >
<batch:tasklet>
<batch:chunk reader="dataReader" processor="dataProcessor"
writer="dataItemWriter" commit-interval="10"
skip-policy="batchSkipPolicy">
</batch:chunk>
<batch:listeners>
<batch:listener ref="batchItemListener" />
<batch:listener ref="batchSkipListener" />
<batch:listener ref="batchChunkListener" />
</batch:listeners>
</batch:tasklet>
</batch:step>
<batch:decision decider="failOnPendingObjectsDecider"
id="decideExitStatus">
<batch:fail on="FAILED_PENDING_OBJECTS" exit-code="FAILED_PENDING_OBJECTS" />
<batch:next on="*" to="endFlowStep" />
</batch:decision>
<batch:step id="endFlowStep">
<batch:tasklet ref="noopTasklet"></batch:tasklet>
</batch:step>
<batch:validator ref="batchParameterValidator" />
<batch:listeners>
<batch:listener ref="batchJobListener" />
</batch:listeners>
</batch:job>
謝謝你的回答。 我的問題不夠精確。當數據處理器試圖用無效的構造函數參數applicationContext.getBean(.....),後應用程序已成功startet來實例化一個bean時 的bean創建例外。在這種情況下,我期待着我使用的AlwaysSkipPolicy被調用,但事實並非如此。該步驟立即結束... – CGoose