A build descriptor helps to determine some aspects of the debugging
environment.
For details on Rich UI, see
Rich UI debugging.
Otherwise, the EGL debugger selects the build descriptor in accordance
with the following rules:
- If you specified a debug build descriptor for your program or
JSF Handler, the EGL debugger uses that build descriptor. For details
on how to establish the debug build descriptor, see Setting the default build descriptors.
- If you did not specify a debug build descriptor, the EGL debugger
prompts you to select from a list of your build descriptors.
- If the build descriptor you specified lacks any required database-connection
information, the EGL debugger gets the connection information by reviewing
your preferences. For details on how to set those preferences, see Setting preferences for SQL database connections.
If you are debugging a program that you intend for use in a text
or batch application in a Java™ environment,
and if that program issues a transfer statement
that switches control to a program that you also intend for use in
a different run unit in a Java environment,
the EGL debugger uses a build descriptor that is assigned to the receiving
program. The choice of build descriptor is based on the rules described
earlier.
If you are debugging a program that is called by another program,
the EGL debugger uses the build descriptor that is assigned to the
called program. The choice of build descriptor is based on the rules
that are described earlier, except that if you do not specify a build
descriptor, the debugger does not prompt you for a build descriptor
when the called program is invoked; instead, the build descriptor
for the calling program remains in use.
Note: You must use a different
build descriptor for the caller and the called program if one of those
programs (but not both) uses VisualAge® Generator
compatibility. The generation-time status of VisualAge compatibility is determined by
the value of the vagCompatibility build
descriptor option.
A build descriptor or resource association part that you use for
debugging code might be different from the one that you use for generating
code. For example, if you intend to access a VSAM file from a program
that is written for a COBOL environment, you are likely to reference
a resource association part in the build descriptor. The resource
association part must refer to the runtime target system (for example,
zOS) and must refer to a file type (for example, vsamrs) that is appropriate
for the target system. The debug situation differs from the generation
situation as follows:
- At generation time, the resource association part indicates the
system name of the file that is used in the target environment.
- At debug time, the system name must reflect another naming convention,
as appropriate when you access a remote VSAM file from an EGL-generated Java program on Windows 2000, NT, or XP; for details on that
naming convention, see your VSAM support documents.
System type used at debug time
The value
in
sysVar.systemType is the same as the
value of the
system build descriptor option,
except that the value is DEBUG in either of two cases:
- You select the preference Set systemType to DEBUG,
as mentioned in Setting preferences for the EGL debugger;
or
- You specified NONE as the build descriptor to use during the debugging
session, regardless of the value of that preference.
If you are using VisualAge Generator
compatibility mode, the vgLib.getVAGSysType system
function returns the VisualAge Generator
equivalent of the value in sysVar.systemType.
For details, see the table in getVAGSysType().