JavaEE批处理启动过程



我想抛出javaee批处理,所以我创建了一个简单的web应用程序,在那里我想公开一个启动作业的get方法。

@GET
@Produces(MediaType.APPLICATION_JSON)
public Response helloWorld() {
Hello hello = new Hello();
hello.setMessage("Hello World");
JobOperator jobOperator = getJobOperator();
Long executionId = jobOperator.start("myJob", new Properties());
JobExecution jobExecution = jobOperator.getJobExecution(executionId);
System.out.println(jobExecution.getBatchStatus());
return Response.ok(hello).build();

rest服务运行良好,我在intellij idea社区版上运行它,我使用maven插件在tomcat服务器上运行它。

问题是BatchRuntime.getJobOperator((总是返回null。我尝试只使用javaee-api dependency,但是找不到BatchRuntime类。之后,我添加了javax.batch-api依赖项,之后找到了类BatchRuntime,但getJobOperator((总是返回null。

请告诉我如何运行作业,以便更熟悉javaee中的批处理。我看过教程,git-reo,但我没有,没有明确的方法来运行xml作业。

Tomcat不是一个完整的Java EE服务器,也不包括JBatch。您应该使用符合Java EE的应用程序服务器,例如Glassfish/Payara、TomEE或Wildfly。

最新更新