April 18, 2024 | IBM Z

Why Use Java Batch for IBM Z Batch Processing? (Part 2)


This blog is the second of two posts focusing on using Java Batch processing for IBM Z, its benefits and key implementation considerations.  


Part 1 described how Java Batch processing works alongside traditional JCL-based mainframe batch applications and the major benefits organizations receive when using Java Batch. Today we’ll describe four key steps to consider when incorporating Java Batch processing into IBM Z batch development.  

Figure 1: Four key steps for evaluating and implementing a Java Batch environment

Four Key Steps to Create a Java Batch Environment

The key to creating an effective Java Batch environment is to modernize your legacy JCL assets and the infrastructure surrounding it to best meet organizational needs. Consider these four key steps (figure 1) to better evaluate and implement Java Batch processing alongside traditional JCL batch processing.


1. Management approval and proof of concept
2. Using IBM Z developers alongside Java developers
3. Think Java Batch integration
4. Building a bridge environment for Java Batch development

#1: Management approval and proof of concept

Your legacy JCL applications have been designed, implemented, and working for decades. Consider prototyping and testing your Java Batch infrastructure to ensure its viability for years to come, including.

  • Creating the business case for running Java Batch alongside traditional JCL. Secure management buy-in including one-time costs, resource allocation, and ROI.
  • Securing developer resources for creating Java Batch applications. See item #2 below.
  • Designating & acquiring tools for Java Batch development, including Integrated Development Environments (IDEs) and other DevOps tools.
  • Determining your first few Java Batch applications that will be programmed & deployed, the business benefits of deploying them and the timeframe the applications will be developed in.

Once your Java Batch development infrastructure is ready, review your implementation and make any necessary adjustments. Integrating Java Batch into your batch environment is a paradigm shift and should be approached accordingly.

#2: Using IBM Z developers alongside Java developers

Your current IBM Z development staff can and should participate in Java Batch development. They have valuable institutional knowledge about critical batch processing requirements. However, there will be a learning curve to teach IBM Z developers how to create Java Batch apps. There will also be a similar learning curve for Java programmers to learn IBM Z batch processing. Utilize all your development resources, Java and IBM Z, to fully integrate Java Batch into your IBM Z environment.

#3: Think Java Batch Integration  

Java Batch should be considered a batch processing alternative that will be implemented according to business needs alongside JCL programming. Java Batch should not be implemented to totally replace JCL batch processing. Java Batch should integrate with, supplement, or replace JCL processing as business needs require. Strategically use Java Batch processing to fulfill business needs, as you already use JCL processing to fulfill business needs.  

Some of the Java Batch-JCL integration strategies you may consider include: 

  • Separating out pieces of batch work into chunks that can be used by different applications 
  • Writing modifications in Java Batch and marrying them to existing processes through a job scheduler 
  • Reworking existing batch processing for consumption through Web browsers or other modern interfaces 

#4: Building a bridge environment for Java Batch development 

One of SEA’s customers who has implemented Java Batch discussed the importance of building a bridge environment for both sets of their Java Batch resources 

  • Traditional Java developers who have been working in Web applications 
  • IBM Z resources who are transitioning into Java Batch development 

The customer used an IBM Java Batch implementation over the JSR-352 framework. They found JSL scripting offered a bridge where the tools could be used by those who are familiar with COBOL and JCL alongside those who are familiar with Java classes in a distributed application environment.


Our customer benefited by creating an environment that helped ease uncomfortable technological transitions for both groups of developers. Consider doing something similar as you implement Java Batch.  


Further Learning

Adopting a Java Batch processing framework with traditional mainframe Job Control Language (JCL) processing offers numerous benefits, including utilizing the skills of existing Java developers who are more widely available and cost-effective than mainframe programmers, utilizing enterprise DevOps tooling, unlocking cost savings and enabling a more modern, flexible, and scalable approach to batch processing tasks & service delivery.  


Please feel free to contact the IBM Z and Java Batch experts at SEA if you wish to learn more about creating a Java Batch environment for your Z batch applications.