Skip to main content
  • Log in
  • Manage Cookies
projects.eclipse.org
Download
  • Projects
  • Working Groups
  • Members
  • Community
    • Marketplace
    • Events
    • Planet Eclipse
    • Newsletter
    • Videos
    • Blogs
  • Participate
    • Report a Bug
    • Forums
    • Mailing Lists
    • Wiki
    • IRC
    • Research
  • Eclipse IDE
    • Download
    • Learn More
    • Documentation
    • Getting Started / Support
    • How to Contribute
    • IDE and Tools
    • Newcomer Forum
  • More
      • Community

      • Marketplace
      • Events
      • Planet Eclipse
      • Newsletter
      • Videos
      • Blogs
      • Participate

      • Report a Bug
      • Forums
      • Mailing Lists
      • Wiki
      • IRC
      • Research
      • Eclipse IDE

      • Download
      • Learn More
      • Documentation
      • Getting Started / Support
      • How to Contribute
      • IDE and Tools
      • Newcomer Forum
    • Search

  1. Home
  2. Projects
  3. Eclipse EE4J
  4. Jakarta Batch™

Jakarta Batch™

Primary tabs

  • Overview(active tab)
  • Downloads
  • Who's Involved
  • Developer Resources
  • Governance
  • Contact Us

The Jakarta Batch™ project describes the XML-based job specification language (JSL), Java programming model, and runtime environment for batch applications for the Java platform.

The specification ties together the Java API and the JSL (XML) allowing a job designer to compose a job in XML from Java application artifacts and conveniently parameterize them with values for an individual job.  This structure promotes application reuse of artifacts across different jobs. 

Some key features:

  • checkpoint / restart - The application read-process-write loop is performed under a global transaction, one "batch" or "chunk" of data at a time, with the batch implementation atomically storing a "checkpoint" at the end.  This checkpoint provides an index into the data stream which allows you to restart a job after an earlier execution hits a failure (or is stopped), such that picks up where you left off (at the checkpointed value).  
  • steps - jobs can be composed of steps to allow reuse of step logic and definitions within multiple jobs, as well as to faciliate restart (at the step the job left off at).
  • XML configuration - Configuration is externalized from Java code into XML and parameterized through a variety of "job property" substitutions.  As one example, this allows database lock tuning (for locks held during the duration of the chunk transaction) to be tuned without touching Java code.
  • partitions - The read-process-write loop can be broken up into multiple units running in parallel against different segments of the input data.

 

The specification allows the flexibility for batch jobs to be scheduled or orchestrated in any number of ways, and stops short of defining any APIs or constructs regarding scheduling or orchestration of multiple or repeated jobs.   

    Working Group: 
    Jakarta EE
    This project is part of Jakarta 10, Jakarta EE 9, and Jakarta EE 8.
    Licenses: 
    Apache License, Version 2.0

    The content of this open source project is received and distributed under the license(s) listed above. Some source code and binaries may be distributed under different terms. Specific license information is provided in file headers and in NOTICE files distributed with the project's binaries.

    Latest Releases: 

    From September 10th, 2019 to March 15th, 2022

    NameDateReview
    2.1.02022-03-15
    2.0.02020-10-07
    1.02019-09-10
    Active Member Companies: 
    Member companies supporting this project over the last three months.
      Contribution Activity: 
      Commits on this project (last 12 months).
      Specification: 
      This Specification Project is affiliated with the Jakarta EE Working Group.

      Project Links

      • Getting Started
      • Documentation
      Jakarta Batch™

      Related Projects

      Project Hierarchy:

      • Eclipse EE4J
      • Jakarta Batch™

      Tags

      Technology Types
      • Specification

      Eclipse Foundation

      • About Us
      • Contact Us
      • Sponsor
      • Members
      • Governance
      • Code of Conduct
      • Logo and Artwork
      • Board of Directors
      • Careers

      Legal

      • Privacy Policy
      • Terms of Use
      • Copyright Agent
      • Eclipse Public License
      • Legal Resources

      Useful Links

      • Report a Bug
      • Documentation
      • How to Contribute
      • Mailing Lists
      • Forums
      • Marketplace

      Other

      • IDE and Tools
      • Projects
      • Working Groups
      • Research@Eclipse
      • Report a Vulnerability
      • Service Status

      Copyright © Eclipse Foundation. All Rights Reserved.

      Back to the top