Java 谷歌GUI中的JSR-352';d独立批次

Java 谷歌GUI中的JSR-352';d独立批次,java,guice,batch-processing,jsr,Java,Guice,Batch Processing,Jsr,我正在尝试使用JavaSE7和Guice的javax.batch1.0创建一个批处理 阅读关于JSR-352的JavaEE7文档,他们显然设置了要在Glassfish中执行的代码,我没有发现关于如何在外部运行它的内容 现在我的问题是关于应该通过CDI自动注入的JobContext接口:如何使用Guice实现它?尝试类似于: @Provides @Inject JobContext providesJobContext(Provider<JobContext> provider) {

我正在尝试使用JavaSE7和Guice的javax.batch1.0创建一个批处理

阅读关于JSR-352的JavaEE7文档,他们显然设置了要在Glassfish中执行的代码,我没有发现关于如何在外部运行它的内容

现在我的问题是关于应该通过CDI自动注入的JobContext接口:如何使用Guice实现它?尝试类似于:

@Provides
@Inject
JobContext providesJobContext(Provider<JobContext> provider) {
    return provider.get()
}
@提供
@注入
JobContext提供JobContext(提供程序){
返回provider.get()
}
在概念上是错误的,它会导致StackOverflowerError(所以我在这里:>)。 真的有必要吗?示例将其注入到作业属性中。我能通过电话联系到他们吗

jobOperator.getParameters(<executionID>)
jobOperator.getParameters()
?

多谢各位


我从未使用过Weld(据我所知,它将在JavaSE上提供CDI),因此唯一的替代方案是Spring Batch。

Weld是JSR-299的参考实现,它将CDI引入JavaEE 6。 此参考实现包含在Glassfish中,因此您可以有效地使用它

Oracle提供的示例:

引述:

我从来没有用过焊接


这里的实现并不重要,因为它只是实现了JSR的规范。

Weld是JSR-299的参考实现,它将CDI引入JavaEE6。 此参考实现包含在Glassfish中,因此您可以有效地使用它

Oracle提供的示例:

引述:

我从来没有用过焊接


这里的实现并不重要,因为它只是实现了JSR的规范。

Weld是JSR-299的参考实现,它将CDI引入JavaEE6。 此参考实现包含在Glassfish中,因此您可以有效地使用它

Oracle提供的示例:

引述:

我从来没有用过焊接


这里的实现并不重要,因为它只是实现了JSR的规范。

Weld是JSR-299的参考实现,它将CDI引入JavaEE6。 此参考实现包含在Glassfish中,因此您可以有效地使用它

Oracle提供的示例:

引述:

我从来没有用过焊接

这里的实现并不重要,因为它只实现JSR的规范。

API解释 首先,澄清“作业属性”和“作业参数”之间的关系

“作业参数”是传递给
JobOperator#start(字符串,属性)
JobOperator#restart(长,属性)
属性

通过
JobContext#getProperties()
访问的“作业属性”是/job/properties元素的子元素

例如,此作业在返回的对象中有两个属性:
JobContext\getProperties()

我很高兴听到更多关于Guice与jbatch集成的信息。您可以在家中查找项目源代码(还没有真正的Wiki)

API解释 首先,澄清“作业属性”和“作业参数”之间的关系

“作业参数”是传递给
JobOperator#start(字符串,属性)
JobOperator#restart(长,属性)
属性

通过
JobContext#getProperties()
访问的“作业属性”是/job/properties元素的子元素

例如,此作业在返回的对象中有两个属性:
JobContext\getProperties()

我很高兴听到更多关于Guice与jbatch集成的信息。您可以在家中查找项目源代码(还没有真正的Wiki)

API解释 首先,澄清“作业属性”和“作业参数”之间的关系

“作业参数”是传递给
JobOperator#start(字符串,属性)
JobOperator#restart(长,属性)
属性

通过
JobContext#getProperties()
访问的“作业属性”是/job/properties元素的子元素

例如,此作业在返回的对象中有两个属性:
JobContext\getProperties()

我很高兴听到更多关于Guice与jbatch集成的信息。您可以在家中查找项目源代码(还没有真正的Wiki)

API解释 首先,澄清“作业属性”和“作业参数”之间的关系

“作业参数”是传递给
JobOperator#start(字符串,属性)
JobOperator#restart(长,属性)
属性

通过
JobContext#getProperties()
访问的“作业属性”是/job/properties元素的子元素

例如,此作业在返回的对象中有两个属性:
JobContext\getProperties()

我很高兴听到更多关于Guice与jbatch集成的信息。你可以在家里追踪项目来源(还没有真正的维基)

@Named
public class SimpleItemReader
       extends AbstractItemReader {

       @Inject
       private JobContext jobContext; 
       ...
}
<job>
   <properties>
    <property name="initialAmount" value="100" />
    <property name="bonusAmount" value="#{jobParameters['bonusAmount']}?:100;" />
   </properties>
</job>
public class BatchProducerBean {
...
@Produces
@Dependent
public JobContext getJobContext() {
    ...
        return JobContextImpl;
    }
}