2.1.0
Specification and API
Jakarta Batch 2.1 is targeted for the Jakarta EE 10 platform release.
This release introduces a new requirement to support integration with CDI, and defines the details of this integration. This evolves from the stance in earlier releases allowing the use of CDI but not explicitly requiring CDI support.
The highlights of the Jakarta Batch + CDI integration:
- an implementation must first try to load an artifact referenced from XML (JSL) as a CDI Bean
- constructor and method parameter injection is supported for batch properties and contexts, in addition to field injection
- we specify that batch contexts and properties must be injected into any CDI Bean based on the "current batch artifact" on the thread
One other detail is the expansion of the @BatchProperty annotation to allow injection of batch properties into certain primitive wrapper types like Integer, Boolean, Long, and some others.
This release requires Java SE 11 or newer (in alignment with Jakarta EE 10).
Another view of the release contents can be seen in the issues collected in the GitHub milestone:
https://github.com/eclipse-ee4j/batch-api/milestone/1
TCK
Although not of direct concern to application developers, but only to implementation providers and contributors to the Jakarta Batch itself, Jakarta Batch 2.1 also includes significant developments for the Jakarta Batch TCK.
Some highlights for the Batch 2.1 TCK:
* Execution is now Maven-based, rather than Ant-based as in previous releases.
* The Batch TCK can now be used for certifying the Batch portion of compatibility with the Jakarta EE 10 Platform. Contributors to the Batch specification and TCK projects do not have to contribute to a separate Platform TCK project nor maintain separate copies of tests across the Batch and Platform TCK projects.
* The runtime tests have been converted from TestNG to JUnit 5, and the tests used for certifying Platform compatibility use Arquillian to plug in to be executed against a given implementation.
Another view of the release contents can be seen in the issues collected in the GitHub milestone:
https://github.com/eclipse-ee4j/batch-tck/milestone/1