
Your toolsets are essential for Jakarta Batch (aka Java Batch) development on IBM Z systems. Java Batch development tools must support the JSR-352 standard, including the XML-based Job Specification Language (JSL) used to create Job XML applications for IBM Z batch processing.
Java Batch complements traditional mainframe JCL processing. It extends batch programming by providing modern DevOps tools and programming languages that aren’t available with JCL batch development. However, Java Batch tools must also provide similar capabilities to existing JCL batch management solutions that have been available in IBM Z shops for years.
Four features for strong JSL validation and runtime capabilities
JSR-352 batch runtimes define Java Batch validation rules. Unfortunately, runtime support often lags behind the robust validation and runtime simulation capabilities that Z organizations already enjoy using with vendor packages like JCLplus+.
Eclipse-based Integrated Development Environments (IDEs) are popular tools for developing IBM Z JCL and Java Batch applications. Plug-ins such as SEA’s JSLplus+ can deliver powerful Java Batch testing capabilities within an Eclipse IDE environment.
Here are four features to look for in Eclipse-based plug-ins for Java Batch development. These features provide strong JSL validation and runtime simulation capabilities for Java Batch, comparable to those offered by advanced JCL batch management solutions.
1. JSL syntax validation and error detection
2. Semantics validation
3. Artifact verification
4. Reporting and cross-reference windows
Look for these capabilities as you adopt a Java Batch processing framework for your organization.
JSL syntax validation and error detection
Java Batch apps require strong JSL syntax validation and error detection. This capability is necessary to ensure the validity of your JSL XML files and to effectively identify JSL-specific errors (Figure 1).
Look for Eclipse plug-ins that offer the following standard and advanced JSL syntax validation and error detection capabilities.
- Syntax and error detection for single Job XML and multiple Job XML files
- JSL error and warning detection with severity levels
- Standards enforcement for site-specific standards

Semantics Validation
Semantics validation is the process of ensuring that object declarations are semantically correct. While that definition may sound circular, it basically means ensuring that defined objects, variables, properties, etc. are clearly and consistently coded in terms of their data types, locations, and other properties. Some examples of JSL semantic validation include:
- Forward References – Forward references occur when you reference a variable that has not yet been initialized (i.e., referring to a variable’s value before initialization), which can result in a compiler error. Java makes some allowances as to legal (allowed) versus illegal (not allowed) forward references. Semantic validation checks for both types of forward references inside a Job XML.
- Property References—Validation checks determine whether all JSL properties are resolved (figure 2). Properties generally include system properties, Java Virtual Machine (JVM) configuration settings, and class properties stored as key-value pairs. Property reference validation checks that JSL properties are resolved within the Java Batch code.

Artifact Validation
An artifact is a file containing compiled Java code and relevant information. Generally delivered as Java Archive (JAR) files, artifacts are used to distribute libraries, frameworks, and other components you can add to projects. JSR-352 specifies that a Job Specification Language (JSL) defines the batch jobs and their associated artifacts to create the programming model for Java Batch applications.
Artifact validation (figure 3) ensures the integrity and accuracy of a JSL artifact, including:
- Actual usage of Java class artifacts in the Job XML
- Whether referenced Java classes exist
- Which fields are used by a Java class
- Which properties are used in a job or step context
- Correct implementation of interfaces within the artifact

Reporting and Cross-Reference Windows
It’s helpful that your JSL plug-ins have robust reporting and cross-reference capability. Reports such as the ones shown above can provide overviews of warnings, errors, and standards enforcement violations found during the validation process.
Eclipsed-based tools can also create searchable indexed references, allowing developers to easily navigate through JSL tags, properties, and Java artifacts when troubleshooting. Additionally, these tools often include visualization features that provide graphical representations of step flows within a Java Batch job. Graphical representations of Job flows enable developers to visualize programming steps to better understand and troubleshoot batch processes (Figure 4).

Strong Validation and Reporting for Java Batch
There is no reason your Java Batch developers can’t use the same type of strong testing and validation tools that traditional JCL mainframe developers use. Eclipsed-based tools such as JSLplus+ provide these capabilities. Please feel free to Contact SEA if you’d like to learn more about JSL development tools and how they can provide strong batch testing and validation capabilities for Java Batch applications.