The batch job return code is retrieved by using the getBatchJobRC
EJB interface, the get BatchJobRC web services interface, or the lrcmd
getBatchJobRC command option.
The following table lists the system batch job return
codes that the batch environment
uses. Do not confuse the batch job return code with either the job
status constants (see the com.ibm.websphere.longrun.JobStatusConstants
API) or the job scheduler constants (see the com.ibm.websphere.longrun.JobSchedulerConstants
API). The JobStatusConstants represent the status of the job such
as submitted, ended, restartable, canceled, or execution failed.
The job status can be obtained by using the getJobStatus EJB interface,
the getJobStatus web services interface, or through the job management
console. The JobSchedulerConstants represent operating conditions
returned by the job scheduler on requests involving multiple jobs.
For example,
int[] cancelJob( String[] jobid ))
.
These conditions include:
- Job does not exist
- Job is in an invalid state
- Database exception has occurred.
Table 1. Batch job return codes. The table includes
each return code with an explanation.
Return code |
Explanation |
0 |
Job ended normally
|
-1 |
Internal protocol error - WSGrid utility
|
-2 |
Input parameter error - WSGrid utility
|
-4 |
Job was suspended
|
-8 |
Job was canceled
|
-10 |
Job was forcibly canceled (z/OS® only)
|
-12 |
Job failed and is in restartable state
|
-14 |
Job failed and is in execution failed state**
|
-16 |
Catastrophic failure - WSGrid utility
|
Note: Even though an application can
set a value for the job return code, that value is only returned when
the job completes normally. If the job fails with a status of either
execution fails or restartable the value returned is one of the runtime-set
negative return codes described in the preceding table.
There are two options that are used to report an error in a batch
application:
- The first option is for the application to produce an exception
when an error is encountered. This results in termination of the
job with a batch job return code of -12 and a batch job status of restartable.
The exception can be thrown in any of the methods of the batch API.
- The second option is for the application to return a BatchConstants.STEP_COMPLETE_EXECUTION_FAILED
return code (see the com.ibm.websphere.batch.BatchConstants API)
from the processJobStep method and return an application-specific
error return code from the destroyJobStep method. This results in
termination of the job and a batch job status of execution
failed. The step return code set in the destroyJobStep method
is passed to any results algorithm specified on the job step and is
used to influence the return code of the job to indicate the specific
cause of the failure.