【发布时间】:2014-06-20 14:04:15
【问题描述】:
我有以下 TicketProductPartitioner 类和上下文。我已将 bean 范围设置为 step 并正在设置参考
<!-- Ticket partitioner into 15 steps -->
<bean id="ticketProductPartitioner" parent="abstractAttributionStep" class="a.b.c.batch.TicketProductPartitioner" scope="step">
<property name="stepExecution" value="#{stepExecution}"/>
</bean>
我的课是
public class TicketProductPartitioner implements Partitioner {
private StepExecution stepExecution = null;
/**
* Create a ExecutionContext for each sub ticket of todays job
*/
public Map<String, ExecutionContext> partition(int gridSize) {
Map<String, ExecutionContext> result = new HashMap<String, ExecutionContext>();
Date runDate = (Date) getStepExecution().getExecutionContext().get(AttributionParameter.RUN_DATE.name());
logger.info("Start TicketProductPartitioner job for run_date "+runDate);
但似乎 stepExecution 引用始终为空。如果这是一个简单的处理器 bean,那么这种接线就可以工作,那么现在我处于分区步骤有什么不同?
【问题讨论】:
标签: spring spring-batch