在Spring中组合StepExecution上下文后期绑定和属性占位符

时间:2015-02-18 05:56:58

标签: java spring spring-batch

我想访问类似这样的内容" $ {#{stepExecution.stepName} .classificationSource}"对于bean的属性。 这基本上是查找" {stepname} .String"来自属性文件。 但是,#{stepExecution.stepName}只能在Spring批处理的beforeStep中解析,而Spring会尝试在bean加载本身上加载$ {..},从而导致错误。有没有解决方法?

更新: 正如OP建议我从params的嵌套中移开。我修改了属性文件结构,以便设置" stepExecutionContext "通过实施" StepExecutionListener "并使用" beforeStep "方法。通过设置我的意思是在executionContext上设置键 classificationSource 的值,从而将表达式减少到" #{stepExecutionContext [' classificationSource']} "  在调试之后,在调用" beforeStep "之前调用此属性字段的setter方法。方法,从而不希望改变场。我在这里失踪了什么? 的修改 我将监听器和bean作为同一个类是不好的。移动了监听器并添加了xml并且工作正常。

0 个答案:

没有答案