The EGL system exceptions are available throughout your code, but are most
often used in an onException block. For an overview, see Exception
handling.
Each of the EGL system exceptions has at least the following fields:
- code
- A string that identifies the exception; for example "com.ibm.egl.InvocationException"
or the equivalent constant, SysLib.InvocationException
- description
- A string that tells the meaning of the exception
The EGL system exceptions are as follows:
- SysLib.DLIException
- Identifies a hard I/O error caused by DL/I access. Exception-specific
fields are as follows:
- statusCode
- A 2-character DLI status code such as GB or II.
- pcbName
- The name of the PCB that was used in the DL/I call. In the program, in
the variable of type PSBRecord, the same PCB name is referenced in the pcbName
field of the complex property@PCB. The default value of that field
is the name of the PCB record that was used on the call.
- SysLib.FileIOException
- Identifies an error that occurs during file access. Errors that occur
during relational-database of message queue access do not raise this exception.
Exception-specific fields are as follows:
- errorCode
- The 8-character status code also returned in SysVar.ErrorCode; for details,
see SysVar.ErrorCode
- fileName
- The logical name of the file being accessed; for details, see Resource
associations and file types
- SysLib.InvocationException
- Identifies an error that occurs in a call statement.
Exception-specific
fields are as follows:
- errorCode
- The 8-character status code also returned in SysVar.ErrorCode; for details,
see SysVar.ErrorCode
- name
- The name of the program being called.
- SysLib.JavaObjectException
- Identifies an error that occurs during access of a Java™ method
by way of an EGL interface. The description field contains the message
from the Java exception. Exception-specific fields are as follows:
- exceptionName
- Name of the Java exception.
- SysLib.LobProcessingException
- Identifies an error that occurred during processing of a field of type
LOB or CLOB. Exception-specific fields are as follows:
- itemName
- Name of the field
- operation
- Name of the EGL system function that failed
- resource
- Name of the file (if any) attached to the field
- SysLib.ServiceBindingException
- Identifies an error that occurs when initializing a binding in a services
binding library or when invoking a ServiceLib function that changes a binding.
No exception-specific fields are available.
- SysLib.ServiceInvocationException
- Identifies an error that occurs when a service is invoked. An error might
occur if an EGL or JAX-RPC class is missing; if the JAX-RPC runtime throws
an exception; or if the EGL service (or EGL runtime) throws an exception.
The
value of the
description field varies by error type:
- Aside from EGL-specific exceptions, the value of the diagnostic field
is from the toString method of the exception; for example, from JAX-RPC or
SOAP
- If the error is from EGL, the value is the EGL Java runtime message number and message
text, which are described in the topics that are subordinate to Java runtime
error codes
In the case of the following EGL errors, only the
code and
description fields
of the exception receive values:
- VGJ1501E: Error loading property file.
- VGJ1502E: Error loading service properties.
- VGJ1503E: Service binding error. The service is an EGL service and get/set
Web Service properties are not valid.
- VGJ1504E: Service binding error. The service is a Web Service and get/set
EGL service properties are not valid.
- VGJ1505E: Service binding error. The service is a Local EGL service and
get/set TCPIP service properties are not valid.
For other errors, the exception-specific fields are as follows:
- faultCode
- The value depends on the exception type:
- For SOAP fault exceptions, the value is returned from the faultCode of
a SOAP exception
- For JAX-RPC exceptions, the value is blank
- For an EGL-related exception, the value is one of these message numbers:
CSO7488E, CSO8109E, VGJ1525E, VGJ1526E, VGJ1527E, VGJ1528E, VGJ1529E, VGJ1530E,
VGJ1532E, VGJ1534E, VGJ1535E, VGJ1536E, VGJ1538E, VGJ1539E, VGJ1540E, VGJ1541E,
VGJ1542E, VGJ1543E, VGJ1544E, VGJ1545E
- source
- The type of service that was being invoked when the exception occurred:
- EGL, which indicates that an EGL service was being invoked
- WEB, which indicates that a Web service was being invoked
- location
- Location of the service at which the exception occurred:
- For EGL services accessed directly, the value is blank
- For EGL services accessed by TCP/IP, the value (if available) is formatted
as follows:
host:portNumber
- host
- TCP/IP host name that refers to the machine where the service runs
- portNumber
- Number of the TCP/IP port that provides access to the service
- For Web services, the value is the URL; specifically, the SOAPActor value
of the SOAP fault
- diagnostic
Aside from EGL-specific exceptions, the value of the diagnostic field
is from the toString method of the exception; for example, from JAX-RPC or
SOAP. For EGL-specific exceptions, the value is blank.
- SysLib.MQIOException
- Identifies an error that occurs during access of an MQSeries® message
queue. Exception-specific fields are as follows:
- errorCode
- The 8-character status code also returned in SysVar.ErrorCode; for details,
see SysVar.ErrorCode
- mqConditionCode
- The completion code from an MQSeries API call, as described in VGVar.mqConditionCode
- name
- The logical name of the queue being accessed; for details, see Resource
associations and file types
- SysLib.SQLException
- Identifies an error that occurs during access of a relational database.
Exception-specific fields are as follows:
- sqlca
- The SQL communication area; for details, see SysVar.sqlca
- sqlcode
- The SQL return code; for details, see SysVar.sqlcode
- sqlErrd
- A 6-element array, where each element contains the corresponding SQL communication
area (SQLCA) value that was returned from the last SQL I/O option; for details,
see VGVar.sqlErrd
- sqlErrmc
- The error message associated with sqlcode, for database access other than
through JDBC; for details, see VGVar.sqlErrmc
- sqlState
- The SQL state value for the most recently completed SQL I/O operation;
for details, see SysVar.sqlState
- sqlWarn
- An 11-element array, where each element contains a warning byte returned
in the SQL communications area (SQLCA) for the last SQL I/O operation and
where the index is one greater that the warning number in the SQL SQLCA description;
for details, see VGVar.sqlState