我们正在开发一个 Spring Batch Job,我们需要存储在一个步骤中计算的数据并在下一步中检索它。
我可以使用spring批处理源中的以下实现以独立的方式实现这一点
http://static.springsource.org/spring-batch/reference/html/patterns.html#passingDataToFutureSteps
但是我们正在以 CLIENT/MASTER 和 SERVER 的方式实现它。CLIENT/MASTER 拥有与作业和分区相关的代码。
客户端在 EAR 之外,由 Shell 脚本用来调用批处理作业。
客户端的 Bean 配置:
<job id="esk956" xmlns="http://www.springframework.org/schema/batch">
<step id="importSalesAlert-master">
<partition handler="partitionHandler" partitioner="partitioner" />
</step>
</job>
<bean id="partitioner"
class="org.springframework.batch.core.partition.support.SimplePartitioner" />
所有与步骤及其实现(读取器、处理器和写入器)相关的代码都在 SERVER/SLAVE 端。
奴隶代码:
<step id="importSalesAlert" xmlns="http://www.springframework.org/schema/batch">
<tasklet transaction-manager="transactionManager">
<chunk reader="salesAlertFileItemReader" processor="nucleusItemProcessor"
writer="nucleusItemWriter" commit-interval="10" />
<listeners>
<listener ref="loggingStepListener" />
</listeners>
</tasklet>
</step>
我们使用 JMS 集成和 Weblogic 作为网络服务器。
请指导我们解决问题。