Note: Before using this information, be sure to read the
general information under Notices.
|
This edition applies to IBM® Rational® Developer for System z® Version 9.1.1 (program number 5724-T07) and to all subsequent releases and modifications until otherwise indicated in new editions.
Order publications by phone or fax. IBM Software Manufacturing Solutions takes publication orders between 8:30 a.m. and 7:00 p.m. eastern standard time (EST). The phone number is (800) 879-2755. The fax number is (800) 445-9269. Faxes should be sent Attn: Publications, 3rd floor.
You can also order publications through your IBM representative or the IBM branch office serving your locality. Publications are not stocked at the address below.
IBM welcomes your comments. You can send your comments by mail to the following address:
IBM Corporation
Attn: Information Development Department 53NA
Building 501 P.O. Box 12195
Research Triangle Park NC 27709-2195
USA
You can fax your comments to: 1-800-227-5088 (US and Canada)
When you send information to IBM, you grant IBM a nonexclusive right to use or distribute the information in any way it believes appropriate without incurring any obligation to you.
© Copyright IBM Corporation 2000, 2014
Note to U.S. Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
This document discusses the configuration of the IBM Rational Developer for System z functions. It includes instructions to configure IBM Rational Developer for System z Version 9.1.1 on your z/OS® host system.
The information in this document applies to all IBM Rational Developer for System z Version 9.1.1 packages.
For the most up-to-date versions of this document, see the IBM Rational Developer for System z Host Configuration Guide (SC23-7658) available at http://www-05.ibm.com/e-business/linkweb/publications/servlet/pbi.wss?CTY=US&FNC=SRX&PBL=SC23-7658.
For the most up-to-date versions of the complete documentation, including installation instructions, white papers, podcasts, and tutorials, see the library page of the IBM Rational Developer for System z website (http://www-01.ibm.com/software/sw-library/en_US/products/Z964267S85716U24/).
This document is intended for system programmers who are installing and configuring IBM Rational Developer for System z Version 9.1.1.
This document lists in detail the steps that are needed to do a full setup of the product, including some non-default scenarios. Background information that can help you to plan and execute the configuration can be found in the IBM Rational Developer for System z Host Configuration Reference (SC14-7290). To use this document, you must be familiar with the z/OS UNIX System Services and MVS™ host systems.
This section summarizes the changes for IBM Rational Developer for System z Version 9.1.1 Host Configuration Guide, SC23-7658-13 (updated December 2014).
Technical changes or additions to the text and illustrations are indicated by a vertical line to the left of the change.
New information:
This document contains information that was previously given in IBM Rational Developer for System z Version 9.1 Host Configuration Guide, SC23-7658-12.
New information:
This document contains information that was previously given in IBM Rational Developer for System z Version 9.0.1 Host Configuration Guide, SC23-7658-11.
New information:
This document contains information that was previously given in IBM Rational Developer for System z Version 9.0.1 Host Configuration Guide, SC23-7658-10.
New information:
This document contains information that was previously given in IBM Rational Developer for System z Version 9.0 Host Configuration Guide, SC23-7658-09.
This document contains information that was previously given in IBM Rational Developer for System z Version 8.5.1 Host Configuration Guide, SC23-7658-08.
This document contains information that was previously given in IBM Rational Developer for System z Version 8.5 Host Configuration Guide, SC23-7658-07.
This document contains information that was previously given in IBM Rational Developer for System z Version 8.0.3 Host Configuration Guide, SC23-7658-06.
This document contains information that was previously given in IBM Rational Developer for System z Version 8.0.1 Host Configuration Guide, SC23-7658-05.
This section summarizes the information that is given in this document.
Use the information in this chapter to plan the installation and deployment of Developer for System z.
Common Access Repository Manager (CARMA) is a server platform for Repository Access Managers (RAMs). A RAM is an Application Programming Interface (API) for a Software Configuration Manager (SCM) that is based on a z/OS system. By wrapping the SCM functionality in a RAM, a single API is available for a client to access any supported SCM.
Developer for System z provides multiple pre-built RAMs and source code examples for creating your own RAM.
The IBM Rational Developer for System z Interface for CA Endevor® Software Configuration Manager gives Developer for System z clients direct access to CA Endevor® SCM.
SCLM Developer Toolkit provides the tools that are needed to extend the capabilities of SCLM to the client. SCLM itself is a host-based source code manager that is included in ISPF.
The SCLM Developer Toolkit has an Eclipse-based plug-in that interfaces to SCLM and provides access to all SCLM processes for heritage code development and support for full Java™ and J2EE development on the workstation with synchronization to SCLM on the mainframe. The synchronization activities include building, assembling, and deployment of the J2EE code from the mainframe.
Similar to the Developer for System z client, the Developer for System z host supports running code analysis tools, which are provided as a separate product, IBM Rational Developer for System z Host Utilities. A benefit of doing code analysis on the host is that it can be integrated in your daily batch processing.
This section combines a variety of optional customization tasks. To configure the required service, follow the instructions in the appropriate section.
After completing the product customization, you can verify the successful setup of key product components by using the Installation Verification Programs (IVPs) described in this chapter.
This section describes the required and optional security definitions with sample RACF® commands.
This section highlights the installation and configuration changes compared to the previous releases of the product. It also gives some general guidelines to migrate to this release.
This section provides an overview of the available operator (or console) commands for Developer for System z.
This section summarizes the information in IBM Rational Developer for System z Host Configuration Reference (SC14-7290).
Migration guide describes the installation and configuration changes compared to previous releases of the product. Use this information to plan your migration to the current release of Developer for System z.
Developer for System z consists of a client, installed on the user's personal computer, and a server, installed on one or more host systems. This documentation contains information for a z/OS host system. However, other operating systems, such as AIX® and Linux on System z, are also supported.
The client provides developers with an Eclipse-based development environment that facilitates a uniform graphical interface to the host, and that, among other things, can offload work from the host to the client, saving resources on the host.
The host portion consists of several permanently active tasks and tasks that are started ad hoc. These tasks allow the client to work with the various components of your z/OS host system, such as MVS data sets, TSO commands, z/OS UNIX files and commands, job submit, and job output.
Developer for System z can also interact with subsystems and other application software on the host system, such as CICS, IBM File Manager, and Software Configuration Managers (SCMs), if Developer for System z is configured to do so, and if these co-requisite products are available.
For a basic understanding of the Developer for System z design, see "Understanding Developer for System z" in the Host Configuration Reference (SC14-7290).
To learn more about the functionality that is offered by Developer for System z, see the Developer for System z website, http://www-03.ibm.com/software/products/en/developerforsystemz/, or your local IBM representative.
SMP/E skills are needed for a Developer for System z host installation.
The configuration of Developer for System z requires more than the typical system programming permissions and expertise, so assistance from others might be needed. Table 3 and Table 4 list the administrators who are needed for the required and optional customization tasks.
Experience has shown that the installation and configuration process of the Developer for System z host system requires from one to four days to complete. This time requirement is for a clean installation performed by an experienced system programmer. If problems are encountered, or if the required skills are not available, the setup will take longer.
For detailed instructions on the SMP/E installation of the product, see Program Directory for IBM Rational Developer for System z (GI11-8298).
The Developer for System z servers are single-system minded, and are not SYSPLEX aware. If you are using the servers in a SYSPLEX, you must ensure that the data requested by the end users (data sets, job output, z/OS UNIX files) is available on the system Developer for System z is installed. See Predeployment considerations for cloning Developer for System z to other systems.
To run multiple instances of Developer for System z on a single host system, see "Running multiple instances" in the Host Configuration Reference (SC14-7290).
The file system (HFS or zFS) in which Developer for System z is installed must be mounted with the SETUID permission bit on (this is the system default). Mounting the file system with the NOSETUID parameter prevents Developer for System z from creating the user's security environment, and rejects the connection requests of the client. The same is true for the file systems hosting Java and z/OS UNIX binaries.
Developer for System z has a list of prerequisite software that must be installed and operational before the product will work. There is also a list of corequisite software to support specific features of Developer for System z. These requisites must be installed and operational at runtime for the corresponding feature to work as designed.
The IBM Rational Developer for System z Prerequisites Guide (SC23-7659) has a list of prerequisite software that must be installed and operational before Developer for System z will work. There is also a list of corequisite software to support specific features of Developer for System z. These requisites must be installed and operational at runtime for the corresponding feature to work as designed. The most up-to-date version of this publication can be found on the library page of the Developer for System z website (http://www-01.ibm.com/software/sw-library/en_US/products/Z964267S85716U24/).
Developer for System z requires the allocation of the systems resources listed in Table 1. The resources listed in Table 2 are required for optional services. Plan to have these resources available because, depending on the policies at your site, it might take some time to get the software.
Resource | Default value | Information |
---|---|---|
LPA data set | FEK.SFEKLPA | LPA definitions in LPALSTxx |
APF-authorized data set | FEK.SFEKAUTH | APF authorizations in PROGxx |
started task | JMON and RSED | PROCLIB changes |
port for host-confined use (JMON) | 6715 | FEJJCNFG, the JES Job Monitor configuration file |
port for client-host communication (RSED) | 4035 | rsed.envvars, the RSE configuration file |
port range for client-host communication (RSED) | any available port is used | Defining the PORTRANGE available for RSE server |
z/OS UNIX server security definition | UPDATE permission to BPX.SERVER for RSED started task | Define RSE as a secure z/OS UNIX server |
PassTicket security definitions | no default | Define the PassTicket support for RSE |
MVS build procedures | ELAXF* | PROCLIB changes |
Resource | Default value | Information |
---|---|---|
IPL with CLPA | not applicable | (Optional) Integrated Debugger |
started task | DBGMGR | (Optional) Integrated Debugger |
LINKLIST data set | FEK.SFEKAUTH and FEK.SFEKLOAD | |
LPA data set | FEK.SFEKLPA | |
Security profiles | AQE.** | |
port range for host-confined use | any available port is used | |
port range for host-confined use | 5336 | (Optional) Integrated Debugger |
port for client-host communication |
|
|
CICS CSD update | multiple values | |
CICS JCL update |
|
Administrator | Task | Information |
---|---|---|
System | Typical system programmer actions are required for all customization tasks | N/A |
Security |
|
"Security considerations" in Host Configuration Reference (SC14-7290) |
TCP/IP | Define new TCP/IP ports | "TCP/IP considerations" in Host Configuration Reference (SC14-7290) |
WLM | Assign the started task goals to the servers and their child processes | "WLM considerations" in the Host Configuration Reference (SC14-7290). |
Administrator | Task | Information |
---|---|---|
System | Typical system programmer actions are required for all customization tasks | N/A |
Security |
|
|
TCP/IP | Define new TCP/IP ports | "TCP/IP ports" in Host Configuration Reference (SC14-7290) |
SCLM |
|
(Optional) SCLM Developer Toolkit |
CICS TS |
|
|
WLM |
|
|
LDAP | Define groups for push-to-client | “Push-to-client considerations” in the Host Configuration Reference (SC14-7290) |
For information about Developer for System z itself, how it interacts with your system, and with the prerequisite and co-requisite products, see Host Configuration Reference (SC14-7290). This information can assist you in creating a setup that supports your current needs and future growth.
Unlike traditional z/OS applications, Developer for System z is not a monolithic application that can be identified easily to Workload Manager (WLM). Developer for System z consists of several components that interact to give the client access to the host system services and data. To plan your WLM configuration, see "WLM considerations" in the Host Configuration Reference (SC14-7290).
Developer for System z uses a variable number of system resources such as address spaces, and z/OS UNIX processes and threads. The availability of these resources is limited by various system definitions. To estimate the usage of key resources so that you can plan your system configuration, see "Tuning considerations" in the Host Configuration Reference (SC14-7290). Developer for System z can run in either 31-bit or 64-bit mode, changing the storage resource limitations drastically.
The user ID of a Developer for System z user must have at least the following attributes:
USER=userid
OMVS INFORMATION
----------------
UID= 0000003200
HOME= /u/userid
PROGRAM= /bin/sh
CPUTIMEMAX= NONE
ASSIZEMAX= NONE
FILEPROCMAX= NONE
PROCUSERMAX= NONE
THREADSMAX= NONE
MMAPAREAMAX= NONE
GROUP group
OMVS INFORMATION
----------------
GID= 0000003243
Developer for System z supports the cloning of an installation to a different system, thus avoiding the need for a SMP/E installation on each system.
Developer for System z
Users of the Developer for System z client must know the result of certain host system customizations, such as TCP/IP port numbers, for the client to work properly. Use these checklists to gather the information needed.
The checklist in Table 5 lists the required results of mandatory customization steps. Table 6 lists the required results of optional customization steps.
Customization | Value |
---|---|
RSE daemon TCP/IP port number. The default is 4035. |
Customization | Value |
---|---|
Location of the ELAXF* procedures
if they are not in a system procedure library. The default FEK.#CUST.PROCLIB. See the note on JCLLIB in ELAXF* remote build procedures. |
|
Procedure or step names of the ELAXF* procedures
if they were changed. See the note on changing them in ELAXF* remote build procedures. |
|
Location of the AKGCR procedure
if it is not in a system procedure library. The default is AKG.#CUST.PROCLIB. See the note on JCLLIB in Code review. |
|
Location of the AKGCC procedure
if it is not in a system procedure library. The default is AKG.#CUST.PROCLIB. See the note on JCLLIB in Code coverage. |
|
Location of the FEKRNPLI Include Preprocessor exec statement. The default is FEK.#CUST.CNTL. | |
Location of the debugger load modules if not in LINKLIST. The default is FEK.SFEKAUTH. See (Optional) Integrated Debugger | |
Location of the unit test load modules if not in LINKLIST or STEPLIB of rsed.envvars. The default is FEK.SFEKLOAD. | |
Location of the AZUZUNIT procedure
if it is not in a system procedure library. The default is FEK.#CUST.PROCLIB. See the note on JCLLIB in (Optional) xUnit support for Enterprise COBOL and PL/I. |
|
Location of the sample *.xsd and *.xsl XML files used for unit test output formatting. The defaults are /usr/lpp/rdz/samples/zunit/xsd and /usr/lpp/rdz/samples/zunit/xsl. | |
(co-requisite) TN3270 port number for Host Connect
Emulator. The default is 23. See "TCP/IP ports" in Host Configuration Reference (SC14-7290). |
|
(co-requisite) REXEC or SSH port number, which, by default are 512 or 22. | |
(co-requisite) Debug Tool server port number (no default). | |
Application Deployment Manager port number,
which by default is 5129 for web service or 5130 for
REST service. See "TCP/IP ports" in Host Configuration Reference (SC14-7290). |
|
Location of the SFEKSAMP sample library for
CARMA RAM samples. The default is FEK.SFEKSAMP. See the CARMA Developer’s Guide (SC23-7660). |
|
Location of the CRA#ASLM JCL
for CARMA SCLM RAM data set allocations. The default is FEK.#CUST.JCL.
See the note on CRA#ASLM in SCLM RAM. |
The following customization steps are for a basic Developer for System z setup. See the chapters about the optional components for their customization requirements.
Developer for System z contains several sample configuration files and sample JCL. To avoid overwriting your customizations when applying maintenance, copy all of these members and z/OS UNIX files to a different location, and customize the copy.
Some functions of Developer for System z require the existence of certain directories in z/OS UNIX, which must be created during the customization of the product. To ease the installation effort, a sample job, FEKSETUP, is provided to create the copies and the required directories.
To create customizable copies of configuration files and configuration JCL, and to create required z/OS UNIX directories, customize and submit the sample FEKSETUP member in the FEK.SFEKSAMP data set. The required customization steps are described within the member.
mkdir /usr/lpp/rdz/cust
ln -s /usr/lpp/rdz/cust /etc/rdz
For more information about the PARMLIB definitions listed in the next sections, see MVS Initialization and Tuning Reference (SA22-7592). For more information about the sample console commands, see MVS System Commands (SA22-7627).
Remote Systems Explorer (RSE), which provides core services such as connecting the client to the host system, is a z/OS UNIX based process. Therefore, it is important to set correct values for the z/OS UNIX system limits in BPXPRMxx, based upon the number of concurrently active Developer for System z users and their average workload. Define OMVS=xx in the IEASYSxx parmlib member to specify which BPXPRMxx parmlib member should be used during IPL.
See "Tuning considerations" in the Host Configuration Reference (SC14-7290) for more information about different BPXPRMxx defined limits and their impact on Developer for System z.
MAXASSIZE specifies the maximum address space (process) region size. Set MAXASSIZE in SYS1.PARMLIB(BPXPRMxx) to 2G. This is the maximum value allowed. This is a system-wide limit, and thus active for all z/OS UNIX address spaces. If this is not what you want, you can set the limit only for Developer for System z in your security software, as described in Define the Developer for System z started tasks.
MAXTHREADS specifies the maximum number of active threads for a single process. Set MAXTHREADS in SYS1.PARMLIB(BPXPRMxx) to 1500 or higher. This is a system-wide limit, and thus active for all z/OS UNIX address spaces. If this is not what you want, you can set the limit only for Developer for System z in your security software, as described in Define the Developer for System z started tasks.
MAXTHREADTASKS specifies the maximum number of active MVS tasks for a single process. Set MAXTHREADTASKS in SYS1.PARMLIB(BPXPRMxx) to 1500 or higher. This is a system-wide limit, and thus active for all z/OS UNIX address spaces. If this is not what you want, you can set the limit only for Developer for System z in your security software, as described in Define the Developer for System z started tasks.
MAXPROCUSER specifies the maximum number of processes that a single z/OS UNIX user ID can have concurrently active. Set MAXPROCUSER in SYS1.PARMLIB(BPXPRMxx) to 50 or higher. This setting is intended to be a system-wide limit, because it should be active for each client that uses Developer for System z.
MOUNT FILESYSTEM('#dsn')
MOUNTPOINT('-PathPrefix-usr/lpp/rdz')
MODE(RDWR) /* can be MODE(READ) */
TYPE(ZFS) PARM('AGGRGROW') /* zFS, with extents */
/* TYPE(HFS) */ /* HFS, auto. extent */
MOUNT FILESYSTEM('#dsn')
MOUNTPOINT('-PathPrefix-usr/lpp/rdzutil')
MODE(RDWR) /* can be MODE(READ) */
TYPE(ZFS) PARM('AGGRGROW') /* zFS, with extents */
/* TYPE(HFS) */ /* HFS, auto. extent */
Add start commands for the Developer for System z RSED and JMON servers to SYS1.PARMLIB(COMMANDxx) to start them automatically at next system IPL. Define CMD=xx in the IEASYSxx parmlib member to specify which COMMNDxx parmlib member should be used during IPL.
The optional Integrated Debugger requires that the Developer for System z DBGMGR server is active on your system.
The optional Integrated Debugger requires that a Developer for System z supervisor call (SVC) is defined to your system.
Installation-defined SVCs are defined in SYS1.PARMLIB(IEASVCxx) and require an IPL to be activated. The related load module must be loaded in LPA at IPL time. Define SVC=xx in the IEASYSxx parmlib member to specify which IEASVCxx parmlib member should be used during IPL.
SVCPARM 251,REPLACE,TYPE(3),EPNAME(AQESVC03) /* RDz debug */
Developer for System z requires that the modules in the FEK.SFEKLPA load library are in the Link Pack Area (LPA) for RSE daemon to work with data sets.
The optional Common Access Repository Manager (CARMA) service supports different server startup methods for the CARMA server. The CRASTART startup method requires that the modules in the FEK.SFEKLPA load library are in the LPA.
The optional Integrated Debugger requires that the load modules in the FEK.SFEKLPA load library are in the LPA during IPL time.
LPA data sets are defined in SYS1.PARMLIB(LPALSTxx). Define LPA=xx in the IEASYSxx parmlib member to specify which LPALSTxx parmlib member should be used during IPL.
For JES Job Monitor to access JES spool files, the modules in the FEK.SFEKAUTH load library and the CEE.SCEERUN* Language Environment (LE) runtime libraries must be APF-authorized.
For the optional Debug Manager to work, the modules in the FEK.SFEKAUTH load library must be APF-authorized.
For the optional SCLM Developer Toolkit service to work, the REXX runtime library (REXX.*.SEAGLPA) must be APF-authorized.
For ISPF to create the TSO/ISPF Client Gateway, the ISP* modules in SYS1.LINKLIB must be APF-authorized. The TSO/ISPF Client Gateway is used by Developer for System z's TSO Commands service and SCLM Developer Toolkit.
APF authorizations are defined in SYS1.PARMLIB(PROGxx) by default. Define PROG=xx in the IEASYSxx parmlib member to specify which PROGxx parmlib member should be used during IPL.
Load library | Load modules | Usage | STEPLIB |
---|---|---|---|
FEK.SFEKAUTH | AQE* and CEE* | (Optional) Integrated Debugger | ELAXFGO procedure, or CICS |
FEJJ* | PROCLIB changes | Started task procedures | |
FEK.SFEKLMOD | IRZ* and IIRZ* | (Optional) Diagnostic IRZ messages for the generated code | CICS, IMS, or MVS batch |
FEK.SFEKLOAD | AND* | (Optional) Application Deployment Manager (deprecated) | CICS |
AZU* and IAZU* | (Optional) xUnit support for Enterprise COBOL and PL/I | rsed.envvars or MVS batch | |
BWB* | (Optional) SCLM Developer Toolkit | rsed.envvars | |
CRA* | (Optional) Common Access Repository Manager (CARMA) | CRASUB* or crastart*.conf | |
ELAX* | ELAXF* remote build procedures (error feedback and include preprocessor) |
ELAXF* procedures | |
FEJB* | (Optional) CICS bidirectional language support | CICS | |
FEK.SFEKLPA | CRA* | (Optional) Common Access Repository Manager (CARMA) | CRASRV.properties |
AQE* | (Optional) Integrated Debugger | not applicable (LPA required) |
In order for the listed Developer for System z services to work, all modules documented in Table 7 that are related to the service must be made available either through STEPLIB or LINKLST (or LPA). Note that the SFEKLMOD library is not used by Developer for System z itself, but by code generated by Developer for System z. See the STEPLIB column in Table 7 if you choose to use STEPLIB to learn where the STEPLIB (or DFHRPL for CICS) definition must be made. However, you should be aware of the following things:
LINKLIST data sets are defined in SYS1.PARMLIB(PROGxx), if your site followed IBM recommendations. Define PROG=xx in the IEASYSxx parmlib member to specify which PROGxx parmlib member should be used during IPL.
LINKLIST data sets are defined in SYS1.PARMLIB(PROGxx) by default. LPA data sets are defined in SYS1.PARMLIB(LPALSTxx).
The Developer for System z client has a code generation component called Enterprise Service Tools. In order for the generated code to issue diagnostic error messages, all IRZM* and IIRZ* modules in the FEK.SFEKLMOD load library must be made available either through STEPLIB or LINKLIST.
LINKLIST data sets are defined in SYS1.PARMLIB(PROGxx) by default.
If you opt to use STEPLIB, you must define the libraries that are not available through LINKLIST in the STEPLIB directive of the task that executes the code (IMS or batch job). However, if one STEPLIB library is APF-authorized, then all other STEPLIB libraries must be authorized. Libraries lose their APF authorization when they are mixed with non-authorized libraries in STEPLIB.
The started task and remote build procedures listed in the following sections must reside in a system procedure library defined to your JES subsystem. In the instructions in the following sections, the IBM default procedure library, SYS1.PROCLIB, is used.
//*
//* JES JOB MONITOR
//*
//JMON PROC PRM=, * PRM='-TV' TO START TRACING
// LEPRM='RPTOPTS(ON)',
// HLQ=FEK,
// CFG=FEK.#CUST.PARMLIB(FEJJCNFG)
//*
//JMON EXEC PGM=FEJJMON,REGION=0M,TIME=NOLIMIT,
// PARM=('&LEPRM,ENVAR("_CEE_ENVFILE_S=DD:ENVIRON")/&PRM')
//STEPLIB DD DISP=SHR,DSN=&HLQ..SFEKAUTH
//ENVIRON DD DISP=SHR,DSN=&CFG
//SYSPRINT DD SYSOUT=*
//SYSOUT DD SYSOUT=*
// PEND
//*
//*
//* RDz Debug Manager
//*
//DBGMGR PROC PRM=, * PRM=DEBUG TO START TRACING
// LEPRM='RPTOPTS(ON)',
// TZ='EST5EDT',
// CLIENT=5335,
// HOST=5336,
// HLQ=FEK
//*
//DBGMGR EXEC PGM=AQEZPCM,REGION=0M,TIME=NOLIMIT,
// PARM=('&LEPRM ENVAR("TZ=&TZ")/&HOST &CLIENT 0 &PRM')
//STEPLIB DD DISP=SHR,DSN=&HLQ..SFEKAUTH
//SYSPRINT DD SYSOUT=*
//SYSOUT DD SYSOUT=*
// PEND
//*
//*
//* RSE DAEMON
//*
//RSED PROC IVP=, * 'IVP' to do an IVP test
// PORT=,
// CNFG='/etc/rdz',
// HOME='/usr/lpp/rdz'
//*
//RSED EXEC PGM=BPXBATSL,REGION=0M,TIME=NOLIMIT,
// PARM='PGM &HOME./bin/rsed.sh &IVP -C&CNFG -P&PORT'
//STDOUT DD SYSOUT=*
//STDERR DD SYSOUT=*
// PEND
//*
The rsed.sh startup script can be started without arguments, in which case the default argument values are used.
ln -s /long/directory/name/usr/lpp/rdz /usr/lpp/rdz
When the PARM field is empty, BPXBATCH starts a z/OS UNIX shell and executes the shell script that is provided by STDIN. STDIN must be a z/OS UNIX file allocated as ORDONLY. Using STDIN disables the using of PROC variables such as TMPDIR. The shell executes the /etc/profile and $HOME/.profile shell logon scripts.
To use this method, first update the startup JCL to match something similar to the following sample:
//*
//* RSE DAEMON - USING STDIN
//*
//RSED PROC CNFG='/etc/rdz'
//*
//RSE EXEC PGM=BPXBATCH,REGION=0M,TIME=NOLIMIT
//STDOUT DD SYSOUT=*
//STDERR DD SYSOUT=*
//STDIN DD PATHOPTS=(ORDONLY),PATH='&CNFG./rsed.stdin.sh'
// PEND
//*
Then, create the shell script (/etc/rdz/rsed.stdin.sh in this example) that will start the RSE daemon. You can edit the file with the TSO OEDIT command. The content of this script looks like the following sample:
CNFG=/etc/rdz
PORT=
IVP=
/long/directory/name/usr/lpp/rdz/bin/rsed.sh $IVP -C$CNFG –P$PORT –T$TMPDIR
z/OS UNIX needs write access to /tmp, or another directory that is referenced by the TMPDIR variable, to be able to process certain commands during started task startup. Developer for System z uses the following logic to set TMPDIR during started task startup.
During started task startup, Developer for System z checks whether TMPDIR is already set (DD STDENV). If so, the started task uses that value. If TMPDIR is not set, the started task will test whether it can use /tmp. If not, the started task will test whether it can use the home directory that is assigned to the started task user ID. If this directory cannot be used either, startup fails.
//*
//* RSE DAEMON
//*
//RSED PROC IVP=, * 'IVP' to do an IVP test
// PORT=,
// CNFG='/etc/rdz',
// HOME='/usr/lpp/rdz'
//*
//RSED EXEC PGM=BPXBATSL,REGION=0M,TIME=NOLIMIT,
// PARM='PGM &HOME./bin/rsed.sh &IVP -C&CNFG -P&PORT'
//STDOUT DD SYSOUT=*
//STDERR DD SYSOUT=*
//STDENV DD PATHOPTS=(ORDONLY),PATH=’&CNFG./rsed.stdenv’
// PEND
//*
TMPDIR=/tmp
Note that even though rsed.envvars has a TMPDIR variable, which will be used as soon as the started task is able to interpret rsed.envvars, you must not link rsed.envvars to DD STDENV, because it will cause startup failure.
Developer for System z allows you to specify variables in DD STDENV of the RSED started task that can be used in rsed.envvars, and that will be propagated to the RSE thread pool, and thus also to all end users.
For example, this allows you to use a single rsed.envvars configuration file for multiple RSED started tasks, as the information that must be unique, like the log directory, can be specified in DD STDENV. Figure 8shows a RSED started task using DD STDENV, and Figure 9 shows an rsed,envvars configuration file using the variable defined in DD STDENV.
//*
//* RSE DAEMON
//*
//RSED PROC IVP=, * 'IVP' to do an IVP test
// PORT=,
// CNFG='/etc/rdz',
// HOME='/usr/lpp/rdz'
//*
//RSED EXEC PGM=BPXBATSL,REGION=0M,TIME=NOLIMIT,
// PARM='PGM &HOME./bin/rsed.sh &IVP -C&CNFG -P&PORT'
//STDOUT DD SYSOUT=*
//STDERR DD SYSOUT=*
//STDENV DD *
MYSYSTEM=CDFMVS08
// PEND
//*
_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Ddaemon.log=/var/rdz/logs/$MYSYSTEM"
Developer for System z provides sample JCL procedures that can be used for the JCL generation, remote project builds, and remote syntax check features of CICS BMS maps, IMS MFS screens, COBOL, PL/I, Assembler, and C/C++ programs. These procedures allow installations to apply their own standards, and ensure that developers use the same procedures with the same compiler options and compiler levels.
The sample procedures and their function are listed in Table 8.
Member | Purpose |
---|---|
ELAXFADT | Sample procedure for assembling and debugging High Level assembler programs. |
ELAXFASM | Sample procedure for assembling High Level assembler programs. |
ELAXFBMS | Sample procedure for creating CICS BMS object and corresponding copy, dsect, or include member. |
ELAXFCOC | Sample procedure for COBOL compiling and doing Integrated CICS translate and integrated DB2 translate. |
ELAXFCOP | Sample procedure for DB2 preprocessing of EXEC SQL statements embedded in COBOL programs. |
ELAXFCOT | Sample procedure for CICS translation for EXEC CICS statements embedded in COBOL programs. |
ELAXFCPC | Sample procedure for C compiling. |
ELAXFCPP | Sample procedure for C++ compiling. |
ELAXFCP1 | Sample procedure for COBOL compiling with SCM preprocessor statements (-INC and ++INCLUDE). |
ELAXFDCL | Sample procedure for running a program in TSO mode. |
ELAXFGO | Sample procedure for the GO step. |
ELAXFLNK | Sample procedure for linking C/C++, COBOL. PLI and High Level Assembler programs. |
ELAXFMFS | Sample procedure for creating IMS MFS screens. |
ELAXFPLP | Sample procedure for DB2 preprocessing of EXEC SQL statements embedded in PLI programs. |
ELAXFPLT | Sample procedure for doing CICS translation of EXEC CICS statements embedded in PLI programs. |
ELAXFPL1 | Sample procedure for PL/I compiling, and integrated CICS translation and integrated DB2 translation. |
ELAXFPP1 | Sample procedure for PL/I compiling with SCM preprocessor statements (-INC and ++INCLUDE). |
ELAXFSP | Sample procedure to register a stored procedure to DB2. |
ELAXFSQL | Sample procedure to invoke SQL. |
ELAXFTSO | Sample procedure for running and debugging the generated DB2 code in TSO mode. |
ELAXFUOP | Sample procedure for generating the UOPT step when building programs that run in CICS or IMS subsystems. |
The names of the procedures and the names of the steps in the procedures match the default properties that are included with the Developer for System z client. If the name of a procedure or the name of a step in a procedure is changed, the corresponding properties file on all of the clients must be updated. You should not change the procedure and step names.
Customize the sample build procedure members, FEK.#CUST.PROCLIB(ELAXF*), as described within the members, and copy them to SYS1.PROCLIB. Provide the correct high-level qualifiers for different product libraries, as described in Table 9.
Product | Default HLQ | Value |
---|---|---|
Developer for System z | FEK | |
CICS | CICSTS42.CICS | |
DB2 | DSNA10 | |
IMS | IMS | |
COBOL | IGY.V4R2M0 | |
PL/I | PLI.V4R2M0 | |
C/C++ | CBC | |
LE | CEE | |
system LINKLIB | SYS1 | |
system MACLIB | SYS1 |
Product | Default DSN | Value |
---|---|---|
Developer for System z - SQL samples | FEK.#CUST.SQL | |
DB2 run libraries | DSNA10.RUNLIB.LOAD |
If the ELAXF* procedures cannot be copied into a system procedure library, ask the Developer for System z users to add a JCLLIB card (right after the JOB card) to the job properties on the client.
//MYJOB JOB <job parameters>
//PROCS JCLLIB ORDER=(FEK.#CUST.PROCLIB)
To create the security definitions for Developer for System z, customize and submit the sample FEKRACF member. The user submitting this job must have security administrator privileges, such as being RACF SPECIAL.
FEKRACF is located in FEK.#CUST.JCL, unless you specified a different location when you customized and submitted the FEK.SFEKSAMP(FEKSETUP) job. For more details, see Customization setup.
Attention: The client connection
request will fail if PassTickets are not set up correctly.
|
JES Job Monitor (JMON) provides all JES-related services. The behavior of JES Job Monitor can be controlled with the definitions in FEJJCNFG.
FEJJCNFG is located in FEK.#CUST.PARMLIB, unless you specified a different location when you customized and submitted the FEK.SFEKSAMP(FEKSETUP) job. For more details, see Customization setup.
Customize the sample JES Job Monitor configuration member FEJJCNFG, as shown in the following sample. Comment lines start with a number sign (#) when using a US code page. Data lines can have only a directive and its assigned value. Comments are not allowed on the same line.
SERV_PORT=6715
TZ=EST5EDT
#APPLID=FEKAPPL
#AUTHMETHOD=SAF
#CODEPAGE=UTF-8
#CONCHAR=$
#CONSOLE_NAME=JMON
#GEN_CONSOLE_NAME=OFF
#HOST_CODEPAGE=IBM-1047
#LIMIT_COMMANDS=NOLIMIT
#LIMIT_CONSOLE=LIMITED
#LIMIT_VIEW=USERID
#LISTEN_QUEUE_LENGTH=5
#LOOPBACK_ONLY=ON
#MAX_DATASETS=32
#MAX_THREADS=200
#TIMEOUT=3600
#TIMEOUT_INTERVAL=1200
#TRACE_STORAGE=OFF
#SEARCHALL=OFF
#SUBMIT_TIMEOUT=30
#SUBMITMETHOD=TSO
#TSO_TEMPLATE=FEK.#CUST.CNTL(FEJTSO)
The port number for JES Job Monitor. The default port is 6715. The port can be changed if needed.
The following definitions are optional. If omitted, default values are used as specified below:
IEA630I OPERATOR console NOW ACTIVE, SYSTEM=sysid, LU=id
IEA631I OPERATOR console NOW INACTIVE, SYSTEM=sysid, LU=id
This directive is used only when CONSOLE_NAME equals &SYSUID and the user ID is not available as console name.
If GEN_CONSOLE_NAME=ON, an alternative console name is generated by appending a single numeric digit to the user ID. The digits 0 through 9 are attempted. If no available console is found, the command issued by the client fails.
Note that this codepage is not used for data interpretation, only for server operations and client connection setup. The Developer for System z client provides the codepage to be used for data interpretation (which is retrieved from the properties of the "MVS Files" subsystem).
Job owner | ||
---|---|---|
LIMIT_COMMANDS | User | Other |
USERID (default) | Allowed | Not allowed |
LIMITED | Allowed | Allowed only if explicitly permitted by security profiles |
NOLIMIT | Allowed | Allowed if permitted by security profiles or when the JESSPOOL class is not active |
When a security profile exists for a command, the user must have sufficient permission to execute the command, regardless of the LIMIT_CONSOLE setting. The only valid settings are LIMITED and NOLIMIT.
The RSE server processes (RSE daemon, RSE thread pool, and RSE server) use the definitions in rsed.envvars. Optional Developer for System z and third-party services can use this configuration file to also define environment variables for their use.
Remote Systems Explorer (RSE) provides core services such as connecting the client to the host system and starting other servers for specific services.
rsed.envvars is located in /etc/rdz/, unless you specified a different location when you customized and submitted the FEK.SFEKSAMP(FEKSETUP) job. For more details, see Customization setup. You can edit the file with the TSO OEDIT command.
See the following sample rsed.envvars file, which must be customized to match your system environment. Comment lines start with a number sign (#) when using a US code page. Data lines can have only a directive and its assigned value; comments are not allowed on the same line. Line continuations and spaces around the equal sign (=) are not supported.
#=============================================================
# (1) required definitions
JAVA_HOME=/usr/lpp/java/J6.0
RSE_HOME=/usr/lpp/rdz
_RSE_RSED_PORT=4035
_RSE_JMON_PORT=6715
RSE_HLQ=FEK
_RSE_HOST_CODEPAGE=IBM-1047
TZ=EST5EDT
LANG=C
PATH=/bin:/usr/sbin
_CEE_DMPTARG=/tmp
STEPLIB=NONE
#STEPLIB=$STEPLIB:CEE.SCEERUN:CEE.SCEERUN2:CBC.SCLBDLL
_RSE_JAVAOPTS=""
_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Xms128m -Xmx512m"
_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Ddaemon.log=/var/rdz/logs"
_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Duser.log=/var/rdz/logs"
_RSE_JAVAOPTS="$_RSE_JAVAOPTS -DDSTORE_LOG_DIRECTORY="
_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Dlog.retention.period=5"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Dmaximum.clients=30"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Dmaximum.threads=520"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Dminimum.threadpool.process=1"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Dmaximum.threadpool.process=100"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Dipv6=true"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Denable.dDVIPA=true"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Ddisplay.users=true"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Dkeep.all.logs=false"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Dkeep.last.log=true"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Denable.standard.log=true"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Dlog.mode=RW.N.N"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Dlog.secure.mode=false"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Denable.port.of.entry=true"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Denable.certificate.mapping=false"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Denable.automount=true"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Denable.audit.log=true"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Daudit.cycle=30"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Daudit.retention.period=0"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Daudit.log.mode=RW.R.N"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Daudit.action=<user_exit>
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Daudit.action.id=<userid>
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Dlogon.action=<user_exit>
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Dlogon.action.id=<userid>
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Ddeny.nonzero.port=true"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Dsingle.logon=false"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Dprocess.cleanup.interval=0"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Dreject.logon.threshold=1000000"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Dinclude.c=/etc/rdz/include.conf"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Dinclude.cpp=/etc/rdz/include.conf"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -DCPP_CLEANUP_INTERVAL=60000"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -DRIS_BUFFER=8"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -DAPPLID=FEKAPPL"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Dkeep.stats.copy.local=true"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Ddebug.miner.autoreconnect=0"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Ddebug.miner.localhost=localhost"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Dsearch.server.limit.hits=0"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Dsearch.server.limit.scanned_objects=0"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Dsearch.server.limit.lines=0"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Dsearch.server.limit.timeout=0"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Dsearch.server.limit.errcount=true"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -DDISABLE_TEXT_SEARCH=true"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -DDENY_PASSWORD_SAVE=true"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -DHIDE_ZOS_UNIX=true"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -DDISABLE_REMOTE_INDEX_SEARCH=true"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -DDISABLE_DELETE_IN_SUBPROJECT=true"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -DDENY_PASSWORD_SAVE=true"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -DDISABLE_REMOTE_INDEX_SEARCH=true"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -DDISABLE_DELETE_IN_SUBPROJECT=true"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -DDENY_PASSWORD_SAVE=true"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -DHIDE_ZOS_UNIX=true"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -DDSTORE_IDLE_SHUTDOWN_TIMEOUT=3600000"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -DDSTORE_USE_THREADED_MINERS=false"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -DDSTORE_SSL_ALGORITHM=TLSv1.2"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -DDSTORE_TCP_NO_DELAY=true"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -DDSTORE_TRACING_ON=true"
#_RSE_JAVAOPTS="$_RSE_JAVAOPTS -DDSTORE_MEMLOGGING_ON=true"
#=============================================================
# (2) required definitions for TSO/ISPF Client Gateway
CGI_ISPHOME=/usr/lpp/ispf
CGI_ISPCONF=/etc/rdz
CGI_ISPWORK=/var/rdz
#STEPLIB=$STEPLIB:ISP.SISPLOAD:ISP.SISPLPA:SYS1.LINKLIB
_RSE_ISPF_OPTS=""
#_RSE_ISPF_OPTS="$_RSE_ISPF_OPTS&ISPPROF=&SYSUID..ISPPROF"
#CGI_ISPPREF="&SYSPREF..ISPF.VCMISPF"
#=============================================================
# (3) required definitions for SCLM Developer Toolkit
_SCLMDT_CONF_HOME=/var/rdz/sclmdt
#STEPLIB=$STEPLIB:$RSE_HLQ.SFEKAUTH:$RSE_HLQ.SFEKLOAD
#_SCLMDT_TRANTABLE=FEK.#CUST.LSTRANS.FILE
#ANT_HOME=/usr/lpp/Apache/Ant/apache-ant-1.7.1
#=============================================================
# (4) optional definitions
#_RSE_PORTRANGE=8108-8118
#_BPXK_SETIBMOPT_TRANSPORT=TCPIP
#TMPDIR=/tmp
#_RSE_FEK_SAF_CLASS=FACILITY
#_RSE_LDAP_SERVER=ldap_server_url
#_RSE_LDAP_PORT=389
#_RSE_LDAP_PTC_GROUP_SUFFIX="o=PTC,c=DeveloperForZ"
#GSK_CRL_SECURITY_LEVEL=HIGH
#GSK_LDAP_SERVER=ldap_server_url
#GSK_LDAP_PORT=ldap_server_port
#GSK_LDAP_USER=ldap_userid
#GSK_LDAP_PASSWORD=ldap_server_password
#STEPLIB=$RSE_HLQ.SFEKLOAD:SYS1.CSSLIB:SYS1.SIXMLOD1
#RSE_UBLD_DD=$CGI_ISPCONF/ISPF.conf
#RSE_UBLD_STEPLIB=$STEPLIB
#=============================================================
# (5) do not change unless directed by IBM support center
_RSE_SAF_CLASS=/usr/include/java_classes/IRRRacf.jar
_CEE_RUNOPTS="ALL31(ON) HEAP(32M,32K,ANYWHERE,KEEP,,) TRAP(ON)"
_BPX_SHAREAS=YES
_BPX_SPAWN_SCRIPT=YES
_EDC_ADD_ERRNO2=1
JAVA_PROPAGATE=NO
RSE_DSN_SFEKLOAD=$RSE_HLQ.SFEKLOAD
RSE_LIB=$RSE_HOME/lib
PATH=.:$JAVA_HOME/bin:$RSE_HOME/bin:$CGI_ISPHOME/bin:$PATH
LIBPATH=$JAVA_HOME/bin:$JAVA_HOME/bin/classic:$RSE_LIB:$RSE_LIB/icuc
LIBPATH=.:/usr/lib:$LIBPATH
CLASSPATH=$RSE_LIB:$RSE_LIB/dstore_core.jar:$RSE_LIB/clientserver.jar
CLASSPATH=$CLASSPATH:$RSE_LIB/dstore_extra_server.jar
CLASSPATH=$CLASSPATH:$RSE_LIB/zosserver.jar
CLASSPATH=$CLASSPATH:$RSE_LIB/dstore_miners.jar
CLASSPATH=$CLASSPATH:$RSE_LIB/universalminers.jar:$RSE_LIB/mvsminers.jar
CLASSPATH=$CLASSPATH:$RSE_LIB/carma.jar:$RSE_LIB/luceneminer.jar
CLASSPATH=$CLASSPATH:$RSE_LIB/mvsluceneminer.jar:$RSE_LIB/cdzminer.jar
CLASSPATH=$CLASSPATH:$RSE_LIB/mvscdzminer.jar:$RSE_LIB/jesminers.jar
CLASSPATH=$CLASSPATH:$RSE_LIB/debug_miner.jar
CLASSPATH=$CLASSPATH:$RSE_LIB/mvsutil.jar:$RSE_LIB/jesutils.jar
CLASSPATH=$CLASSPATH:$RSE_LIB/lucene-core-2.3.2.jar
CLASSPATH=$CLASSPATH:$RSE_LIB/cdtparser.jar:$RSE_LIB/wdzBidi.jar
CLASSPATH=$CLASSPATH:$_RSE_SAF_CLASS
CLASSPATH=.:$CLASSPATH
_RSE_PTC=$_RSE_LDAP_PTC_GROUP_SUFFIX
_RSE_ISPF_OPTS="&SESSION=SPAWN$_RSE_ISPF_OPTS"
_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Dldap.server.address=$_RSE_LDAP_SERVER"
_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Dldap.server.port=$_RSE_LDAP_PORT"
_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Dldap.ptc.group.name.suffix=$_RSE_PTC"
_RSE_JAVAOPTS="$_RSE_JAVAOPTS -DISPF_OPTS='$_RSE_ISPF_OPTS'"
_RSE_JAVAOPTS="$_RSE_JAVAOPTS -DA_PLUGIN_PATH=$RSE_LIB"
_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Xbootclasspath/p:$RSE_LIB/bidiTools.jar"
_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Dfile.encoding=$_RSE_HOST_CODEPAGE"
_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Dconsole.encoding=$_RSE_HOST_CODEPAGE"
_RSE_JAVAOPTS="$_RSE_JAVAOPTS -DDSTORE_INITIAL_SIZE=0"
_RSE_JAVAOPTS="$_RSE_JAVAOPTS -DDSTORE_MAX_FREE=0"
_RSE_JAVAOPTS="$_RSE_JAVAOPTS -DDSTORE_SPIRIT_ON=true"
_RSE_JAVAOPTS="$_RSE_JAVAOPTS -DSPIRIT_EXPIRY_TIME=90"
_RSE_JAVAOPTS="$_RSE_JAVAOPTS -DSPIRIT_INTERVAL_TIME=6"
_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Dcom.ibm.cacheLocalHost=true"
_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Duser.home=$HOME"
_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Dclient.username=$RSE_USER_ID"
_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Dlow.heap.usage.ratio=15"
_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Dmaximum.heap.usage.ratio=40"
_RSE_JAVAOPTS="$_RSE_JAVAOPTS -DDSTORE_KEEPALIVE_ENABLED=true"
_RSE_JAVAOPTS="$_RSE_JAVAOPTS -DDSTORE_KEEPALIVE_RESPONSE_TIMEOUT=60000"
_RSE_JAVAOPTS="$_RSE_JAVAOPTS -DDSTORE_IO_SOCKET_READ_TIMEOUT=180000"
_RSE_JAVAOPTS="$_RSE_JAVAOPTS -DRSECOMM_LOGFILE_MAX=0"
_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Djob.monitor.port=$_RSE_JMON_PORT"
_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Dlock.info.timeout=10000"
_RSE_JAVAOPTS="$_RSE_JAVAOPTS -showversion"
_RSE_SERVER_CLASS=org.eclipse.dstore.core.server.Server
_RSE_DAEMON_CLASS=com.ibm.etools.zos.server.RseDaemon
_RSE_POOL_SERVER_CLASS=com.ibm.etools.zos.server.ThreadPoolProcess
_RSE_SERVER_TIMEOUT=120000
_SCLMDT_BASE_HOME=$RSE_HOME
_SCLMDT_WORK_HOME=$CGI_ISPHOME
CGI_DTWORK=$_SCLMDT_WORK_HOME
_CMDSERV_BASE_HOME=$CGI_ISPHOME
_CMDSERV_CONF_HOME=$CGI_ISPCONF
_CMDSERV_WORK_HOME=$CGI_ISPWORK
#=============================================================
# (6) additional environment variables
Additional information can be found in the UNIX System Services Command Reference (SA22-7802).
# RSE
STEPLIB=$STEPLIB:CEE.SCEERUN:CEE.SCEERUN2:CBC.SCLBDLL
# ISPF
STEPLIB=$STEPLIB:ISP.SISPLOAD:ISP.SISPLPA:SYS1.LINKLIB
# SCLM Developer Toolkit
STEPLIB=$STEPLIB:$RSE_HLQ.SFEKAUTH:$RSE_HLQ.SFEKLOAD
# zUnit, xUnit support for Enterprise COBOL and PL/I
STEPLIB=$STEPLIB:$RSE_HLQ.SFEKLOAD:SYS1.CSSLIB:SYS1.SIXMLOD1
The following definitions are required if ISPFs TSO/ISPF Client Gateway is used for the TSO Commands service or SCLM Developer Toolkit.
The following definitions are required if SCLM Developer Toolkit is used.
The following definitions are optional. If omitted, default values are used:
The host name can either be a TCP/IP address or a URL. Each host name can contain an optional port number separated from the host name by a colon sign (:).
The following definitions are required, and should not be changed unless directed by the IBM support center:
This is a part of rsed.envvars customization that specifies the ports on which the RSE server can communicate with the client. This range of ports has no connection with the RSE daemon port.
#_RSE_PORTRANGE=8108-8118
RSE server does not need the port exclusively for the duration of the client connection. It is only in the time span between the server bind and the client connect that no other RSE server can bind to the port. This means that most connections use the first port in the range, with the rest of the range being a buffer in case of multiple simultaneous logons.
With the different _RSE_*OPTS directives, rsed.envvars provides the facility to give extra parameters to Java when it starts the RSE processes. The sample options included in rsed.envvars can be activated by uncommenting them.
_RSE_JAVAOPTS defines standard and RSE-specific Java options.
The following directives are commented out by default.
UNIX standards dictate that permissions can be set for three types of users: owner, group, and other. The fields in this variable match this order, and the fields are separated by a period (.). Each field can be empty (which equals N), or have N, R, W, or RW as values, where N = none, R = read and W = write.
UNIX standards dictate that permissions can be set for three types of users: owner, group, and other. The fields in this variable mask match this order, and the fields are separated by a period (.). Each field can be empty (which equals N), or have N, R, W, or RW as values, where N=none, R = read and W = write.
debug.miner.autoreconnect | Reconnect behavior |
---|---|
-1 | Do not reconnect |
0 (default) | Attempt to reconnect every minute until successful |
1-86400 | Attempt to reconnect up to the specified amount of times. The maximum value, 86400, equals 24 hours. |
With the different _RSE_*OPTS directives, rsed.envvars provides the facility to give extra parameters to Java when it starts the RSE processes. The sample options included in rsed.envvars can be activated by uncommenting them.
The _RSE_ISPF_OPTS directives are RSE-specific Java options and are, by default, in effect only when ISPF's TSO/ISPF Client Gateway is used by the Developer for System z.
ISPF's TSO/ISPF Client Gateway uses the definitions in ISPF.conf to create a valid environment to execute batch TSO and ISPF commands. Developer for System z uses this environment to run some MVS based services. These services include the TSO Commands service and SCLM Developer Toolkit.
ISPF.conf is located in /etc/rdz/, unless you specified a different location when you customized and submitted job FEK.SFEKSAMP(FEKSETUP). For more details, see Customization setup. You can edit the file with the TSO OEDIT command.
Definitions must start in column 1. Comment lines start with an asterisk (*) when using a US code page. Data lines can have only a directive and its assigned value. Comments are not allowed on the same line. Line continuations are not supported. When concatenating data set names, add them on the same line and separate the names with a comma (,).
In addition to providing the correct names for the ISPF data sets, also add the TSO Commands service data set name, FEK.SFEKPROC, to the SYSPROC or SYSEXEC statement, as shown in the following example.
* REQUIRED:
sysproc=ISP.SISPCLIB,FEK.SFEKPROC
ispmlib=ISP.SISPMENU
isptlib=ISP.SISPTENU
ispplib=ISP.SISPPENU
ispslib=ISP.SISPSLIB
ispllib=ISP.SISPLOAD
* OPTIONAL:
*allocjob = ISP.SISPSAMP(ISPZISP2)
*ISPF_timeout = 900
ISPTRACE=nullfile
This section combines a variety of optional customization tasks. Follow the instructions in the appropriate section to configure the required service.
The detailed description of the various installation verification programs (IVPs) is located in Installation verification because some of the IVPs are for the optional components.
FEJ211I Server ready to accept connections.
If the job ends with return code 66, FEK.SFEKAUTH is not APF-authorized.
FEK002I RseDaemon started. (port=4035)
F RSED,APPL=IVP PASSTICKET,userid
F RSED,APPL=IVP DAEMON,userid
F RSED,APPL=IVP ISPF,userid
Replace userid with a valid TSO user ID.
Common Access Repository Manager (CARMA) is a server platform for Repository Access Managers (RAMs). A RAM is an Application Programming Interface (API) for a z/OS based Software Configuration Manager (SCM). By wrapping the SCM functionality in a RAM, a single API is available for a client to access any supported SCM.
Developer for System z provides multiple pre-built RAMs and source code examples for creating your own RAM.
SCMs that are based on host systems need single-user address spaces to access their services, which requires CARMA to start a CARMA server for each user. It is not possible to create a single server supporting multiple users.
Developer for System z supports multiple methods to start a CARMA server. Developer for System z also provides multiple Repository Access Managers (RAMs), which can be divided into two groups, production RAMs and sample RAMs. This publication describes several possible combinations of RAMs and server startup methods. Each of the described configuration scenarios is available as a preconfigured setup.
Developer for System z supports multiple methods to start a CARMA server. Each method has benefits and drawbacks.
The "CRASTART" method starts the CARMA server as a subtask within RSE. This method provides a very flexible setup by using a separate configuration file that defines data set allocations and program invocations that are needed to start a CARMA server. This method provides the best performance and uses the fewest resources, but requires that the CRASTART module be located in LPA.
The "batch submit" method starts the CARMA server by submitting a job. This is the default method that is used in the provided sample configuration files. The benefit of this method is that the CARMA logs are easily accessible in the job output. It also allows the use of custom server JCL for each developer, which is maintained by the developer himself. However, this method uses one JES initiator for each developer who starts a CARMA server.
The "TSO/ISPF Client Gateway" method uses ISPF's TSO/ISPF Client Gateway to create a TSO or ISPF environment, in which the CARMA server is started. This method allows for flexible data set allocations by using the possibilities of ISPF.conf. However, this method is not suited to access SCMs that interfere with normal TSO or ISPF operations.
Production type RAMs are fully functional, pre-built RAMs that can be used to access an SCM in a production environment.
The IBM Rational Developer for System z Interface for CA Endevor® Software Configuration Manager gives Developer for System z clients direct access to CA Endevor® SCM. From here on, IBM Rational Developer for System z Interface for CA Endevor® SCM is abbreviated to CA Endevor® SCM RAM.
The CA Endevor® SCM packages RAM gives Developer for System z clients direct access to CA Endevor® SCM packages.
Sample RAMs are provided for the purpose of testing the configuration of your CARMA environment and as examples for developing your own RAMs. Source code is included.
The PDS RAM gives a data set list similar to MVS Files -> My Data Sets in the Remote Systems view.
The skeleton RAM gives a functional framework that can be used as starting point to develop your own RAM.
The SCLM RAM gives a basic entry into SCLM, ISPF's Software Configuration Manager. The SCLM RAM is not enabled by default.
Detailed information on the different steps of each scenario can be found in CARMA configuration details.
It is possible to add a RAM to any CARMA setup, now or somewhere in the future. See (Optional) Supporting multiple RAMs for more information on adding a RAM to an existing setup.
This customization step can be omitted if you want to use one of the other scenarios with different specifications.
To define and populate the CARMA-related VSAM data sets, customize and submit the following JCL jobs. For customization instructions, see the documentation within the member. Existing VSAM data sets are replaced.
For more details on this step, see CARMA VSAM data sets.
RSE server uses the settings in /etc/rdz/CRASRV.properties to start and connect to a CARMA server. You can edit the file with the TSO OEDIT command. For the changes to take effect, restart the RSED started task.
When you use the default file locations, the only required changes are changing the value of the clist.dsname directive to *CRASTART and changing the value of crastart.configuration.file to /etc/rdz/crastart.endevor.conf. For more information about the different directives, see CRASRV.properties, the RSE interface to CARMA.
clist.dsname=*CRASTART
crastart.configuration.file=crastart.endevor.conf
CRASTART uses the definitions in /etc/rdz/crastart.endevor.conf to create a valid TSO/ISPF environment to start a CARMA server. You can edit the file with the TSO OEDIT command. Changes are in effect for all CARMA servers that are started after the update.
For customization instructions, see the documentation within the file. For more information about the CRASTART startup method, see crastart*.conf, the CRASTART server startup.
* DD used by RAM
TYPEMAP = FEK.#CUST.PARMLIB(CRATMAP)
SHOWVIEW= FEK.#CUST.PARMLIB(CRASHOW)
CRACFG = FEK.#CUST.PARMLIB(CRACFG)
* uncomment CRABCFG and CRABSKEL to use batch actions
*CRABCFG = FEK.#CUST.PARMLIB(CRABCFG)
*CRABSKEL= FEK.#CUST.CNTL
* uncomment and provide correct DSN to use Package Ship
*APIHJC = #shiphjc
CONLIB = CA.NDVR.CSIQLOAD
-COMMAND=ALLOC FI(JCLOUT) SYSOUT(A) WRITER(INTRDR) RECFM(F) LRECL(80)
BLKSIZE(80)
-COMMAND=ALLOC FI(EXT1ELM) NEW DELETE DSORG(PS) RECFM(V,B) LRECL(4096)
BLKSIZE(27998) SPACE(5,5) TRACKS UNIT(SYSALLDA)
-COMMAND=ALLOC FI(EXT2ELM) NEW DELETE DSORG(PS) RECFM(V,B) LRECL(4096)
BLKSIZE(27998) SPACE(5,5) TRACKS UNIT(SYSALLDA)
-COMMAND=ALLOC FI(EXT1DEP) NEW DELETE DSORG(PS) RECFM(V,B) LRECL(4096)
BLKSIZE(27998) SPACE(5,5) TRACKS UNIT(SYSALLDA)
C1EXMSGS= SYSOUT(H)
C1MSGS1 = SYSOUT(H)
MSG3FILE= DUMMY
* DD used by CARMA server (CRASERV)
* pay attention to APF authorizations when using TASKLIB
TASKLIB = FEK.SFEKLOAD,CA.NDVR.CSIQAUTH,CA.NDVR.CSIQAUTU
CRADEF = FEK.#CUST.CRADEF
CRAMSG = FEK.#CUST.CRAMSG
CRASTRS = FEK.#CUST.CRASTRS
CARMALOG= SYSOUT(H)
SYSPRINT= SYSOUT(H)
* DD used by ISPF (via NDVRC1)
-COMMAND=ALLOC FI(ISPCTL0) NEW DELETE DSORG(PS) RECFM(F,B) LRECL(80)
BLKSIZE(32720) SPACE(5,5) TRACKS UNIT(SYSALLDA)
-COMMAND=ALLOC FI(ISPCTL1) NEW DELETE DSORG(PS) RECFM(F,B) LRECL(80)
BLKSIZE(32720) SPACE(5,5) TRACKS UNIT(SYSALLDA)
-COMMAND=ALLOC FI(ISPPROF) NEW DELETE DSORG(PO) RECFM(F,B) LRECL(80)
BLKSIZE(32720) SPACE(5,5) TRACKS UNIT(SYSALLDA) DIR(5)
ISPTABL = -ISPPROF
ISPTLIB = -ISPPROF,ISP.SISPTENU
ISPMLIB = ISP.SISPMENU
ISPPLIB = ISP.SISPPENU
ISPSLIB = ISP.SISPSENU
* DD used by TSO (IKJEFT01)
SYSPROC = FEK.SFEKPROC * CRANDVRA
SYSTSIN = DUMMY
SYSTSPRT= SYSOUT(H)
PROGRAM=IKJEFT01 %CRANDVRA NDVRC1 PGM(CRASERV) PARM(&CRAPRM1.
&CRAPRM2. &CRAPRM3. &CRAPRM4. &CRAPRM5. &CRAPRM6. &CRAPRM7.
&CRAPRM8. )
This customization step can be bypassed if you want to use one of the other scenarios with different specifications.
Customize and submit the following JCL jobs to define and populate the CARMA-related VSAM data sets. For customization instructions, see the documentation within the member. Existing VSAM data sets are replaced.
For more details on this step, see CARMA VSAM data sets and CARMA Repository Access Managers (RAMs).
RSE server uses the settings in /etc/rdz/CRASRV.properties to start and connect to a CARMA server. You can edit the file with the TSO OEDIT command. For the changes to take effect, the RSED started task must be restarted.
When using the default file locations, the only required change is changing the value of the clist.dsname directive to *CRASTART. For more information about the different directives, see CRASRV.properties, the RSE interface to CARMA.
clist.dsname=*CRASTART
crastart.configuration.file=crastart.conf
CRASTART uses the definitions in /etc/rdz/crastart.conf to create a valid TSO/ISPF environment to start a CARMA server. You can edit the file with the TSO OEDIT command. Changes are in effect for all CARMA servers that are started after the update.
For customization instructions, see the documentation within the file. For more information about the CRASTART startup method, see crastart*.conf, the CRASTART server startup.
* DD used by RAM
CRARAM1 = FEK.#CUST.CRARAM1 * PDS RAM
* DD used by CARMA server (CRASERV)
TASKLIB = FEK.SFEKLOAD
CRADEF = FEK.#CUST.CRADEF
CRAMSG = FEK.#CUST.CRAMSG
CRASTRS = FEK.#CUST.CRASTRS
CARMALOG= SYSOUT(H)
SYSPRINT= SYSOUT(H)
* DD used by ISPF (ISPSTART)
-COMMAND=ALLOC FI(ISPCTL0) NEW DELETE DSORG(PS) RECFM(F,B) LRECL(80)
BLKSIZE(32720) SPACE(5,5) TRACKS UNIT(SYSALLDA)
-COMMAND=ALLOC FI(ISPCTL1) NEW DELETE DSORG(PS) RECFM(F,B) LRECL(80)
BLKSIZE(32720) SPACE(5,5) TRACKS UNIT(SYSALLDA)
-COMMAND=ALLOC FI(ISPPROF) NEW DELETE DSORG(PO) RECFM(F,B) LRECL(80)
BLKSIZE(32720) SPACE(5,5) TRACKS UNIT(SYSALLDA) DIR(5)
ISPTABL = -ISPPROF
ISPTLIB = -ISPPROF,ISP.SISPTENU
ISPMLIB = ISP.SISPMENU
ISPPLIB = ISP.SISPPENU
ISPSLIB = ISP.SISPSENU
* DD used by TSO (IKJEFT01)
SYSPROC = #hlq.SFEKPROC * CRAALLOC
SYSTSIN = DUMMY
SYSTSPRT= SYSOUT(H)
PROGRAM=IKJEFT01 %CRAALLOC ISPSTART PGM(CRASERV) PARM(&CRAPRM1.
&CRAPRM2. &CRAPRM3. &CRAPRM4. &CRAPRM5. &CRAPRM6. &CRAPRM7.
&CRAPRM8. )
The custom RAMs have additional components that can be customized if needed.
This customization step can be omitted if you want to use one of the other scenarios with different specifications.
Customize and submit the following JCLs to define and populate the CARMA-related VSAM data sets. For customization instructions, see the documentation within the member. Existing VSAM data sets are replaced.
For more details on this step, see CARMA VSAM data sets.
RSE server uses the settings in /etc/rdz/CRASRV.properties to start and connect to a CARMA server. You can edit the file with the TSO OEDIT command. For the changes to take effect, the RSED started task must be restarted.
When using default file locations, the only required change is changing the value of the clist.dsname directive to FEK.#CUST.CNTL(CRASUBCA). For more information about the different directives, see CRASRV.properties, the RSE interface to CARMA.
clist.dsname='FEK.#CUST.CNTL(CRASUBCA)'
The FEK.#CUST.CNTL(CRASUBCA) CLIST and embedded JCL submits a CARMA server. Changes are in effect for all CARMA servers that are started after the update.
For customization instructions, see the documentation within the member. For more information about the batch submit startup method, see CRASUB*, the batch submit server startup.
PROC 8 CRAPRM1 CRAPRM2 CRAPRM3 CRAPRM4 CRAPRM5 CRAPRM6 CRAPRM7 CRAPRM8
SUBMIT * END($$)
//CRA&PORT JOB CLASS=A,MSGCLASS=A,MSGLEVEL=(1,1)
//*
//RUN EXEC PGM=IKJEFT01,DYNAMNBR=125,REGION=0M,TIME=NOLIMIT
//*
//* DD used by RAM
//TYPEMAP DD DISP=SHR,DSN=FEK.#CUST.PARMLIB(CRATMAP)
//SHOWVIEW DD DISP=SHR,DSN=FEK.#CUST.PARMLIB(CRASHOW)
//CRACFG DD DISP=SHR,DSN=FEK.#CUST.PARMLIB(CRACFG)
//* uncomment CRABCFG and CRABSKEL to use batch actions
//*CRABCFG DD DISP=SHR,DSN=FEK.#CUST.PARMLIB(CRABCFG)
//*CRABSKEL DD DISP=SHR,DSN=FEK.#CUST.CNTL
//* uncomment and provide correct DSN to use Package Ship
//*APIHJC DD DISP=SHR,DSN=#shiphjc
//CONLIB DD DISP=SHR,DSN=CA.NDVR.CSIQLOAD
//JCLOUT DD SYSOUT=(A,INTRDR),DCB=(LRECL=80,RECFM=F,BLKSIZE=80)
//EXT1ELM DD DISP=(NEW,DELETE),UNIT=SYSALLDA,
// RECFM=VB,LRECL=4096,BLKSIZE=27998,SPACE=(TRK,(5,5))
//EXT2ELM DD DISP=(NEW,DELETE),UNIT=SYSALLDA,
// RECFM=VB,LRECL=4096,BLKSIZE=27998,SPACE=(TRK,(5,5))
//EXT1DEP DD DISP=(NEW,DELETE),UNIT=SYSALLDA,
// RECFM=VB,LRECL=4096,BLKSIZE=27998,SPACE=(TRK,(5,5))
//C1MSGS1 DD SYSOUT(H)
//C1EXMSGS DD SYSOUT(H)
//MSG3FILE DD DUMMY
//*
//* DD used by CARMA server (CRASERV)
//* pay attention to APF authorizations when using STEPLIB
//STEPLIB DD DISP=SHR,DSN=FEK.SFEKLOAD
// DD DISP=SHR,DSN=CA.NDVR.CSIQAUTH
// DD DISP=SHR,DSN=CA.NDVR.CSIQAUTU
//CRADEF DD DISP=SHR,DSN=FEK.#CUST.CRADEF
//CRAMSG DD DISP=SHR,DSN=FEK.#CUST.CRAMSG
//CRASTRS DD DISP=SHR,DSN=FEK.#CUST.CRASTRS
//CARMALOG DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//*
//* DD used by ISPF (via NDVRC1)
//ISPPROF DD DISP=(NEW,DELETE,DELETE),UNIT=SYSALLDA,
// LRECL=80,RECFM=FB,SPACE=(TRK,(1,1,5))
//ISPCTL0 DD DISP=(NEW,DELETE,DELETE),UNIT=SYSALLDA,
// LRECL=80,RECFM=FB,SPACE=(TRK,(5,5))
//ISPCTL1 DD DISP=(NEW,DELETE,DELETE),UNIT=SYSALLDA,
// LRECL=80,RECFM=FB,SPACE=(TRK,(5,5))
//ISPMLIB DD DISP=SHR,DSN=ISP.SISPMENU
//ISPPLIB DD DISP=SHR,DSN=ISP.SISPPENU
//ISPSLIB DD DISP=SHR,DSN=ISP.SISPSENU
//ISPTLIB DD DISP=SHR,DSN=ISP.SISPTENU
//*
//* DD used by TSO (IKJEFT01)
//SYSPROC DD DISP=SHR,DSN=FEK.SFEKPROC * CRANDVRA
//SYSTSPRT DD SYSOUT=*
//SYSTSIN DD *
%CRANDVRA NDVRC1 PGM(CRASERV) PARM(&CRAPRM1 &CRAPRM2 &STR(+)
&CRAPRM3 &STR(+)
&CRAPRM4 &STR(+)
&CRAPRM5 &STR(+)
&CRAPRM6 &STR(+)
&CRAPRM7 &STR(+)
&CRAPRM8 &STR(+) )
$$
EXIT CODE(0)
This customization step can be omitted if you want to use one of the other scenarios with different specifications.
Customize and submit the following JCL jobs to define and populate the CARMA-related VSAM data sets. For customization instructions, see the documentation within the member. Existing VSAM data sets are replaced.
For more details on this step, see CARMA VSAM data sets and CARMA Repository Access Managers (RAMs).
RSE server uses the settings in /etc/rdz/CRASRV.properties to start and connect to a CARMA server. You can edit the file with the TSO OEDIT command. For the changes to take effect, the RSED started task must be restarted.
Because this is the default scenario for Developer for System z, no changes are required when starting from an unmodified copy of the file. For more information about the different directives, see CRASRV.properties, the RSE interface to CARMA.
clist.dsname='FEK.#CUST.CNTL(CRASUBMT)'
The FEK.#CUST.CNTL(CRASUBMT) CLIST and embedded JCL submits a CARMA server. Changes are in effect for all CARMA servers that are started after the update.
For customization instructions, see the documentation within the member. For more information about the batch submit startup method, see CRASUB*, the batch submit server startup.
PROC 8 CRAPRM1 CRAPRM2 CRAPRM3 CRAPRM4 CRAPRM5 CRAPRM6 CRAPRM7 CRAPRM8
SUBMIT * END($$)
//CRA&PORT JOB CLASS=A,MSGCLASS=A,MSGLEVEL=(1,1)
//*
//RUN EXEC PGM=IKJEFT01,DYNAMNBR=125,REGION=0M,TIME=NOLIMIT
//*
//* DD used by RAM
//CRARAM1 DD DISP=SHR,DSN=FEK.#CUST.CRARAM1 * PDS RAM
//*
//* DD used by CARMA server (CRASERV)
//STEPLIB DD DISP=SHR,DSN=FEK.SFEKLOAD
//CRADEF DD DISP=SHR,DSN=FEK.#CUST.CRADEF
//CRAMSG DD DISP=SHR,DSN=FEK.#CUST.CRAMSG
//CRASTRS DD DISP=SHR,DSN=FEK.#CUST.CRASTRS
//CARMALOG DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//*
//* DD used by ISPF (ISPSTART)
//ISPPROF DD DISP=(NEW,DELETE,DELETE),UNIT=SYSALLDA,
// LRECL=80,RECFM=FB,SPACE=(TRK,(1,1,5))
//ISPCTL0 DD DISP=(NEW,DELETE,DELETE),UNIT=SYSALLDA,
// LRECL=80,RECFM=FB,SPACE=(TRK,(5,5))
//ISPCTL1 DD DISP=(NEW,DELETE,DELETE),UNIT=SYSALLDA,
// LRECL=80,RECFM=FB,SPACE=(TRK,(5,5))
//ISPMLIB DD DISP=SHR,DSN=ISP.SISPMENU
//ISPPLIB DD DISP=SHR,DSN=ISP.SISPPENU
//ISPSLIB DD DISP=SHR,DSN=ISP.SISPSENU
//ISPTLIB DD DISP=SHR,DSN=ISP.SISPTENU
//*
//* DD used by TSO (IKJEFT01)
//SYSPROC DD DISP=SHR,DSN=#hlq.SFEKPROC * CRAALLOC
//SYSTSPRT DD SYSOUT=*
//SYSTSIN DD *
%CRAALLOC ISPSTART PGM(CRASERV) PARM(&CRAPRM1 &CRAPRM2 &STR(+)
&CRAPRM3 &STR(+)
&CRAPRM4 &STR(+)
&CRAPRM5 &STR(+)
&CRAPRM6 &STR(+)
&CRAPRM7 &STR(+)
&CRAPRM8 &STR(+)
)
$$
EXIT CODE(0)
The custom RAMs have additional components that can be customized if needed.
The different configuration scenarios that are documented in this publication share many of the CARMA configuration files. The details of these configuration files are documented here, and they are referenced from within the various scenarios.
The CARMA server provides a standard API for other products that use host systems to access one or more Software Configuration Managers (SCMs). However, it does not provide methods for direct communication with a client computer. For this communication, it relies on other products, such as the RSE server. The RSE server uses the settings in CRASRV.properties to start and connect to a CARMA server.
# CRASRV.properties - CARMA configuration options
#
port.start=0
#port.range=100
#user.exit='FEK.SFEKSAMP(CRAEXIT)'
startup.script.name=carma.startup.rex
clist.dsname='FEK.#CUST.CNTL(CRASUBMT)'
crastart.configuration.file=crastart.conf
#crastart.stub=/usr/lpp/rdz/bin/CRASTART
#crastart.syslog=Partial
#crastart.timeout=420
#crastart.steplib=FEK.SFEKLPA
#crastart.tasklib=TASKLIB
With quotes (') the data set name is an absolute reference, without quotes (') the data set name is prefixed with the client's user ID, not the TSO prefix. The latter requires that all CARMA users must maintain their own exit code.
A sample user exit is provided as SFEKSAMP(CRAEXIT). This sample also documents the startup arguments passed to the user exit. For more information see (Optional) CARMA user exit.
The default is 'FEK.#CUST.CNTL(CRASUBMT)'. This CLIST starts a CARMA server when opening a connection by using the batch submit method.
A (All) | All tracing information is printed to SYSLOG |
P (Partial) | Only connect, disconnect, and error information is printed to SYSLOG |
anything else | Only error conditions are printed to SYSLOG |
To specify the required detail level for system log messages, uncomment and customize. This directive is used only if the clist.dsname directive has *CRASTART as value.
RSE starts the CRASTART load module, which uses the definitions in crastart*.conf to create a valid environment to execute batch TSO and ISPF commands. Developer for System z uses this environment to run the CARMA server, CRASERV.
crastart*.conf is located in /etc/rdz/, unless you specified a different location when you customized and submitted job FEK.SFEKSAMP(FEKSETUP). For more details, see Customization setup. You can edit the file with the TSO OEDIT command.
&CRAUSER. | Client user ID |
&CRADATE. | Current® date in Dyyyyddd format (7 char Julian) |
&CRATIME. | Current time in Thhmmss format (hour min sec) |
&CRAPRM1. | Port number |
&CRAPRM2. | Timeout value |
System symbol | Any SYS1.PARMLIB(IEASYMxx) system symbol |
-<ddname> | A hyphen (-) followed by a previously defined DD name acts like a *.ddname backward reference in JCL. The original DD must be allocated using the –COMMAND statement. |
Figure 24 shows a basic crastart*.conf skeleton that includes ISPF services.
* DD used by RAM
* DD used by CARMA server (CRASERV)
TASKLIB = FEK.SFEKLOAD
CRADEF = FEK.#CUST.CRADEF
CRAMSG = FEK.#CUST.CRAMSG
CRASTRS = FEK.#CUST.CRASTRS
CARMALOG= SYSOUT(H)
SYSPRINT= SYSOUT(H)
* DD used by ISPF (ISPSTART)
-COMMAND=ALLOC FI(ISPCTL0) NEW DELETE DSORG(PS) RECFM(F,B) LRECL(80)
BLKSIZE(32720) SPACE(5,5) TRACKS UNIT(SYSALLDA)
-COMMAND=ALLOC FI(ISPCTL1) NEW DELETE DSORG(PS) RECFM(F,B) LRECL(80)
BLKSIZE(32720) SPACE(5,5) TRACKS UNIT(SYSALLDA)
-COMMAND=ALLOC FI(ISPPROF) NEW DELETE DSORG(PO) RECFM(F,B) LRECL(80)
BLKSIZE(32720) SPACE(5,5) TRACKS UNIT(SYSALLDA) DIR(5)
ISPTABL = -ISPPROF
ISPTLIB = -ISPPROF,ISP.SISPTENU
ISPMLIB = ISP.SISPMENU
ISPPLIB = ISP.SISPPENU
ISPSLIB = ISP.SISPSENU
* DD used by TSO (IKJEFT01)
SYSPROC = #hlq.SFEKPROC * CRAALLOC
SYSTSIN = DUMMY
SYSTSPRT= SYSOUT(H)
PROGRAM=IKJEFT01 %CRAALLOC ISPSTART PGM(CRASERV) PARM(&CRAPRM1.
&CRAPRM2. &CRAPRM3. &CRAPRM4. &CRAPRM5. &CRAPRM6. &CRAPRM7.
&CRAPRM8. )
CRASTART creates a TSO environment as a child process of RSE, which runs in a separate address space. Non-trivial actions might be needed to keep the CARMA output sent to SYSOUT(*), which complicates the collecting of log files. This difficulty can be resolved by writing the log files to a user-specific data set, as shown in the following sample allocation:
-COMMAND=ALLOC FI(CARMALOG) MOD CATALOG DSORG(PS) RECFM(F,B) LRECL(133)
BLKSIZE(27930) SPACE(5,5) TRACKS UNIT(SYSALLDA)
DA(&CRAUSER..&SYSNAME..CRA.CARMALOG)
RSE starts CLIST CRASUB*, which in turn submits an embedded JCL to create a valid environment to execute batch TSO and ISPF commands. Developer for System z uses this environment to run the CARMA server, CRASERV.
CRASUB* is located in FEK.#CUST.CNTL, unless you specified a different location when you customized and submitted the FEK.SFEKSAMP(FEKSETUP) job. For more details, see Customization setup.
Figure 25 shows a basic CRASUB* skeleton that includes ISPF services.
PROC 8 CRAPRM1 CRAPRM2 CRAPRM3 CRAPRM4 CRAPRM5 CRAPRM6 CRAPRM7 CRAPRM8
/* SET CRAPRM2=420
SUBMIT * END($$)
//CRA&PORT JOB CLASS=A,MSGCLASS=A,MSGLEVEL=(1,1)
//*
//RUN EXEC PGM=IKJEFT01,DYNAMNBR=125,REGION=0M,TIME=NOLIMIT
//*
//* DD used by RAM
//*
//* DD used by CARMA server (CRASERV)
//STEPLIB DD DISP=SHR,DSN=FEK.SFEKLOAD
//CRADEF DD DISP=SHR,DSN=FEK.#CUST.CRADEF
//CRAMSG DD DISP=SHR,DSN=FEK.#CUST.CRAMSG
//CRASTRS DD DISP=SHR,DSN=FEK.#CUST.CRASTRS
//CARMALOG DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//*
//* DD used by ISPF (ISPSTART)
//ISPPROF DD DISP=(NEW,DELETE,DELETE),UNIT=SYSALLDA,
// LRECL=80,RECFM=FB,SPACE=(TRK,(1,1,5))
//ISPCTL0 DD DISP=(NEW,DELETE,DELETE),UNIT=SYSALLDA,
// LRECL=80,RECFM=FB,SPACE=(TRK,(5,5))
//ISPCTL1 DD DISP=(NEW,DELETE,DELETE),UNIT=SYSALLDA,
// LRECL=80,RECFM=FB,SPACE=(TRK,(5,5))
//ISPMLIB DD DISP=SHR,DSN=ISP.SISPMENU
//ISPPLIB DD DISP=SHR,DSN=ISP.SISPPENU
//ISPSLIB DD DISP=SHR,DSN=ISP.SISPSENU
//ISPTLIB DD DISP=SHR,DSN=ISP.SISPTENU
//*
//* DD used by TSO (IKJEFT01)
//SYSPROC DD DISP=SHR,DSN=#hlq.SFEKPROC * CRAALLOC
//SYSTSPRT DD SYSOUT=*
//SYSTSIN DD *
%CRAALLOC ISPSTART PGM(CRASERV) PARM(&CRAPRM1 &CRAPRM2 &STR(+)
&CRAPRM3 &STR(+)
&CRAPRM4 &STR(+)
&CRAPRM5 &STR(+)
&CRAPRM6 &STR(+)
&CRAPRM7 &STR(+)
&CRAPRM8 &STR(+)
)
$$
EXIT CODE(0)
The CARMA server requires READ access to three VSAM data sets. The sample members to create and populate these VSAM data sets are located in FEK.#CUST.JCL, unless you specified a different location when you customized and submitted the FEK.SFEKSAMP(FEKSETUP) job. For more details, see Customization setup.
The mentioned sample jobs can be used to disable a defined RAM during VSAM creation. Doing so enables you to create a customized CARMA setup by using a single master input file, which can be one provided by IBM or customized by your RAM developers.
Prior to Developer for System z version 7.6.1, strings defined in the CARMA custom information VSAM data set are limited to predefined lengths. This limitation forces RAM developers to shorten descriptive strings, or to use client-side plug-ins to display full-length strings.
The new VSAM record structure supports a variable-length data structure layout for the CARMA custom information VSAM data set, CRASTRS, where strings are separated by a delimiter character instead of being of fixed length.
Customize and submit the FEK.SFEKSAMP(CRA#VS2) JCL to convert your existing, fixed-length, CARMA custom information VSAM data set, CRASTRS, to the new variable-length format.
A Repository Access Manager (RAM) is an Application Programming Interface (API) for a z/OS based Software Configuration Manager (SCM). In turn, Developer for System z or user-written applications can start a CARMA server, which loads the RAMs and provides a standard interface to access any supported SCM.
The CARMA server must be able to find the RAM load modules, either through LINKLIST or STEPLIB/TASKLIB.
The CRAR* RAM load modules that are provided by Developer for System z are located in FEK.SFEKLOAD, and the sample source code and compile jobs are located in FEK.SFEKSAMP, unless you used a different high level qualifier during the SMP/E install of Developer for System z.
The following sections have customization notes for the RAMs that are available with Developer for System z. The referenced sample members are located in FEK.#CUST.*, unless you specified a different location when you customized and submitted the FEK.SFEKSAMP(FEKSETUP) sample job. For more details, see Customization setup.
For in-depth knowledge of CARMA and for more information on the sample RAMs and sample source code provided, see Common Access Repository Manager Developer's Guide (SC23-7660).
The following CA Endevor® SCM RAM-specific CARMA components can be customized, regardless of the chosen server startup method. The sample members referenced below are located in FEK.#CUST.PARMLIB, unless you specified a different location when you customized and submitted the FEK.SFEKSAMP(FEKSETUP) job. For more details, see Customization setup.
CRACFG specifies how the CA Endevor® SCM RAM interacts with CA Endevor® SCM. Refer to the documentation within the member for customization instructions if you want to change the defaults.
# ENTRY-STAGE-COPY-MODE = RETRIEVE-ADD
# ALTERNATIVE-ALLOC = YES
CRASHOW defines default filters for CA Endevor® SCM environments, systems, and so forth. Refer to the documentation within the member for customization instructions if you want to change the defaults.
ENV=*
TOENV=
STGID=*
TOSTGID=
SYS=*
SUBSYS=*
ELEM=*
TOELEM=
TYPE=*
#FILTER-DEP=YES
CRATMAP overrides the CA Endevor® SCM type to file extension mappings. If you want to change the defaults, see the customization instructions in the documentation within the member.
# * = cbl
# COBOL = cbl
# COPY = cpy
# ASM = asm
# MACRO = asm
# PROCESS = jcl
Both the batch submit and the CRASTART startup method call the CRANDVRA REXX exec to allocate user-specific data sets used by CA Endevor® SCM RAM. The allocations are done in a separate exec, because an exec allows more flexibility than what is possible within the batch submit CRASUBCA JCL and the CRASTART crastart.endevor.conf configuration file. The allocation exec is also responsible for calling the optional user exit.
DD | Data set name | Type |
---|---|---|
DEPEND | &SYSPREF..&SYSUID..&SYSNAME..CRA$NDVR.DEPEND | Permanent |
BROWSE | &SYSPREF..&SYSUID..&SYSNAME..CRA$NDVR.BROWSE | Temporary |
C1PRINT | &SYSPREF..&SYSUID..&SYSNAME..CRA$NDVR.LISTING | Temporary |
SPCLLIST | &SYSPREF..&SYSUID..&SYSNAME..CRA$NDVR.SPCLLIST | Temporary |
PKGSCLS | &SYSPREF..&SYSUID..&SYSNAME..CRA$NDVR.PKGSCLS | Temporary |
CRABJCLO | &SYSPREF..&SYSUID..&SYSNAME..CRA$NDVR.CRABJCLO | Temporary |
ENHCEDIT | &SYSPREF..&SYSUID..&SYSNAME..CRA$NDVR.ENHCEDIT | Temporary |
CRAPARM | &SYSPREF..&SYSUID..&SYSNAME..CRA$NDVR.CRAPARM | Temporary |
You can customize a copy of this allocation REXX exec if certain defaults, such as the data set name, do not match your site standards. CRANDVRA is located in FEK.SFEKPROC, unless you used a different high-level qualifier during the SMP/E install of Developer for System z.
For customization instructions, see the documentation within the member. For more information about allocation execs, see (Optional) Custom allocation exec.
Normally, CA Endevor® SCM actions such as “Generate Element” are executed “online”, in the CARMA server address space. This behavior causes problems if your CA Endevor® SCM procedures call TSO, because TSO is already active and that means that the required DDs such as SYSTSIN and SYSTSPRT are in use.
To resolve this problem, the CA Endevor® SCM RAM supports “batch actions” since version 8.0.3. When batch-actions is enabled, the CA Endevor® SCM RAM submits a customizable batch job to perform actions like “Generate Element”. Using a batch job results in the allocation of DDs such as SYSTSIN and SYSTSPRT by your CA Endevor® SCM procedures, because the submitted JCL does not require TSO to be active.
CA Endevor® SCM RAM batch-actions are the Developer for System z equivalent of background CA Endevor® SCM actions.
When a request is issued to execute an action that is supported by batch-actions, the CA Endevor® SCM RAM checks for the existence of the CRABCFG DD, in CRASUBCA or crastart.endevor.conf, and checks that the setup behind this DD is valid. If CRABCFG exists and the setup is valid, the action is performed in batch. If CRABCFG does not exist, the action is performed online. Version 8.0.3 or later clients have the facility to override this behavior.
//* uncomment CRABCFG and CRABSKEL to use batch actions
//*CRABCFG DD DISP=SHR,DSN=FEK.#CUST.PARMLIB(CRABCFG)
//*CRABSKEL DD DISP=SHR,DSN=FEK.#CUST.CNTL
CRABCFG defines the configuration variables related to CA Endevor® SCM RAM batch-actions.
CRABCFG is located in FEK.#CUST.PARMLIB, unless you specified a different location when you customized and submitted the FEK.SFEKSAMP(FEKSETUP) job. For more details, see Customization setup.
See the following CRABCFG sample file, which must be customized to match your system environment. Comment lines start with a number sign (#) when using a US code page. Comments behind a directive and its assigned value are supported. Spaces around the equal sign (=) are supported. Line continuations are not supported.
# Location of batch action JCL
SKELETON-DD = CRABSKEL
#
# batch action JCL members within SKELETON-DD
DEFAULT-JOBCARD = CRABJOBC
ADD-ELEMENT = CRABATCA
DELETE-ELEMENT = CRABATCA
GENERATE-ELEMENT = CRABATCA
MOVE-ELEMENT = CRABATCA
RETRIEVE-ELEMENT = CRABATCA
PRINT-ELEMENT = CRABATCA
PRINT-MEMBER = CRABATCA
SIGNIN-ELEMENT = CRABATCA
TRANSFER-ELEMENT = CRABATCA
#
# Command substitution key within batch action JCL
BSTIPT01-KEY = <CRA_BSTIPT01>
CRABATCA is a sample skeleton JCL used for batch-actions. To change the defaults, see the customization instructions in the documentation within the member.
CRABATCA is located in FEK.#CUST.CNTL, unless you specified a different location when you customized and submitted the FEK.SFEKSAMP(FEKSETUP) job. For more details, see Customization setup.
Changes are active for all new invocations. No server restart is needed.
//<JOBCARD>
//*
//CRABATCA EXEC PGM=NDVRC1,DYNAMNBR=1500,REGION=4096K,PARM='C1BM3000'
//STEPLIB DD DISP=SHR,DSN=CA.NDVR.CSIQAUTU
// DD DISP=SHR,DSN=CA.NDVR.CSIQAUTH
//CONLIB DD DISP=SHR,DSN=CA.NDVR.CSIQLOAD
//C1MSGS1 DD SYSOUT=*
//C1MSGS2 DD SYSOUT=*
//C1PRINT DD SYSOUT=*,DCB=(RECFM=FBA,LRECL=133)
//SYSOUT DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//SYMDUMP DD DUMMY
//SYSIN DD DUMMY
//BSTIPT01 DD *
SET STOPRC 16 .
<CRA_BSTIPT01>
//*
CRABJOBC is a sample default JOB card used for batch-action skeleton JCL that specifies the <JOBCARD> key. To change the defaults, see customization instructions in the documentation within the member.
CRABJOBC is located in FEK.#CUST.CNTL, unless you specified a different location when you customized and submitted the FEK.SFEKSAMP(FEKSETUP) job. For more details, see Customization setup.
Changes are active for all new invocations. No server restart is needed.
//<USERID>B JOB CLASS=A,MSGCLASS=A,MSGLEVEL=(1,1)
//*PROCS JCLLIB ORDER=(COBOL.V4R1M0.SIGYPROC,CBC.SCCNPRC)
Both the batch submit and the CRASTART startup method call the CRAALLOC REXX exec to allocate user-specific data sets that can be used by a user-written RAM. The allocations are done in a separate exec, because an exec allows more flexibility than what is possible within the batch submit CRASUBMT JCL and the CRASTART crastart.conf configuration file. The allocation exec is also responsible for calling the optional user exit.
DD | Data set name | Type |
---|---|---|
CRAPARM | &SYSPREF..&SYSUID..&SYSNAME..CRA$CUST.CRAPARM | Temporary |
You can customize a copy of this allocation REXX exec if certain defaults, such as the data set name, do not match your site standards. CRAALLOC is located in FEK.SFEKPROC, unless you used a different high-level qualifier during the SMP/E install of Developer for System z.
CARMA can report various error codes to the client or in the host system logs. The details that are provided with the error, and the information in Table 13, can help you locate the error and work towards a resolution.
Error range | Error type |
---|---|
4-99 | Generic CARMA errors |
100-199 | Generic RAM errors |
200-399 | CRASERV (CARMA server) errors |
400-499 | RSE (CARMA miner) errors |
500-899 | RAM-specific errors |
900-999 | TSO and TCP/IP errors |
CARMA has the facility for defining multiple RAMs and running them concurrently. However, because there is only one CARMA server active for a user, even when there are multiple RAMs, some configuration changes might be required to make this setup work.
RAMs are defined by a RAM developer in the CARMA configuration VSAM data set, CRADEF. During startup, the CARMA server, CRASERV, identifies all of the defined RAMs and sends the information to the CARMA client. The user can then select one or more RAMs, which is loaded into the CARMA server.
Because RAMs are active as plug-ins of the CARMA server, ensure that all prerequisites, such as data set allocations, for each of the RAMs are available in the address space of the CARMA server. This requirement might need changes to the CARMA configuration samples, such as CRASUBMT or crastart.conf, which are included with Developer for System z.
In the following example, you start from an existing setup with the CA Endevor® SCM RAM, using the CRASTART startup method, and add the sample PDS RAM.
CRARAM1 = FEK.#CUST.CRARAM1
PROGRAM=IKJEFT01 %CRANDVRA NDVRC1 PGM(CRASERV)
PARM(&CRAPRM1. &CRAPRM2.)
The CA Endevor® SCM RAM is active in an ISPF environment, which implies that the TSO environment required by the PDS RAM is also available.
All CARMA server startup methods have limitations regarding data set allocation. For example, TSO prefix substitution is not available in JCL or CRASTART.
However, by creating an exec that is called after TSO or ISPF starts, and before CARMA is started, you can use the whole range of variables and services available in TSO or ISPF to do the required allocations.
Developer for System z uses an allocation exec in each of the pre-configured setups described earlier in this chapter. FEK.SFEKPROC(CRANDVRA), the allocation exec for CA Endevor® SCM RAM and FEK.SFEKPROC(CRAALLOC), the allocation exec for custom RAMs, The exec allocates cataloged temporary data sets that have the user’s TSO prefix as high-level qualifier. The allocation exec is also responsible for calling the optional user exit.
Customization instructions are documented within the exec. Changing the allocation exec is supported, but not advised, as customizations must be redone when PTF service updates the exec. If possible, use the CARMA user exit instead, which is described in (Optional) CARMA user exit.
The following samples show how to start an allocation exec that requires only TSO.
SYSPROC = my.exec.library
PROGRAM = IKJEFT01 %myexec ISPSTART PGM(CRASERV) PARM(&CRAPRM1. &CRAPRM2. )
//SYSPROC DD DISP=SHR,DSN=my.exec.library
//SYSTSIN DD *
%myexec ISPSTART PGM(CRASERV) PARM(&CRAPRM1. &CRAPRM2. )
//*
CARMA supports the invocation of a user exit to allow for specialized initialization during startup and specialized cleanup during shutdown of the CARMA server. The usage of a user exit reduces the need to alter the allocation exec, which is maintained by PTF service.
The user exit is invoked by the allocation exec, and is executed twice. The initialization invocation is after the allocation of the temporary data sets and before the CARMA server is invoked. The cleanup invocation is after the CARMA server ended and before the temporary files are removed. If the first invocation ends with return code 99 or higher, CARMA startup is interrupted. This implies that neither CARMA server nor the second invocation of this user exit is executed.
A sample user exit is provided as FEK.SFEKSAMP(CRAEXIT), unless you used a different high-level qualifier during the SMP/E install of Developer for System z. This sample user exit documents in detail the startup arguments passed to the user exit:
Startup argument | Description |
---|---|
(STARTUP) | (ENDING) | Indicator whether the exit invocation is before or after CARMA server invocation. |
EXIT_RC=rc | Return code of the previous invocation of the
exit. rc Is always 0 during (STARTUP) invocation. |
CARMA_RC=rc | Return code of the invocation of CARMA server. rc Is always 0 during (STARTUP) invocation. |
… | CARMA server startup command and startup arguments. For example ISPSTART PGM(CRASERV) PARM(1312 420 EXIT=CRAEXIT CLIENT=9.0.1 . . . . ) |
Output generated by the user exit is shown in DD SYSTSPRT of the CARMA server.
If the CARMA server is started using TSO (IKJEFTxx), problems might occur if your RAMs call services which in turn call the IRXJCL REXX batch interface. The problem can occur when the processors called by the RAM previously ran either without TSO, or only in online TSO, and dynamically allocates DD SYSTSIN or SYSTSPRT. A sample program, CRAXJCL, is provided to work around this problem.
Your processor might fail if it attempts to allocate SYSTSIN or SYSTSPRT, which is required for IRXJCL, because batch TSO required for CARMA already has those DD names allocated and open. The CRAXJCL replacement module attempts to allocate SYSTSIN and SYSTSPRT to DUMMY but ignores the errors which occur if the allocations fail. It then calls IRXJCL to do the actual work.
This means that when your processors run in a CARMA environment started by TSO, the allocations to SYSTSIN and SYSTSPRT are the same as those used by CARMA. When the processors are run outside of TSO/CARMA, the SYSTSIN and SYSTSPRINT allocations are created by CRAXJCL. Therefore, your processors must not rely on the contents of the data set allocated to SYSTSIN.
It is assumed that calls to IRXJCL use the PARM field to pass the REXX name and startup parameters, as documented in TSO/E REXX Reference (SA22-7790). This means that SYSTSIN can safely be used by CARMA. Any output sent to SYSTSPRT by IRXJCL is written in CARMA’s log.
Processors that call the CRAXJCL replacement module should not attempt to allocate DD SYSTSIN or SYSTSPRT before calling CRAXJCL.
The CRAXJCL replacement module is provided in source format because you must customize it to specify the specific allocations to use for SYSTSPRT. The allocation for SYSTSIN should usually be to a dummy data set.
Sample assembler source code and a sample compile/bind job are available as FEK.#CUST.ASM(CRAXJCL) and FEK.#CUST.JCL(CRA#CIRX), unless you specified a different location when you customized and submitted FEK.SFEKSAMP(FEKSETUP) job. For more details, see Customization setup.
Customize the CRAXJCL assembler source code as needed, using the documentation within the member. Afterward, customize and submit the CRA#CIRX JCL to create the CRAXJCL load module. For customization instructions, see the documentation within the member.
If needed, you can rename IRXJCL to something else. Adjust the CRAXJCL source to call this new name for IRXJCL and compile it, and then rename the CRAXJCL load module to IRXJCL. This setup might be easier than changing all your calls to IRXJCL.
SCLM Developer Toolkit provides the tools that are needed to extend the capabilities of SCLM to the client. SCLM itself is a host system-based source code manager that is included as part of ISPF.
The SCLM Developer Toolkit has an Eclipse-based plug-in that interfaces to SCLM and provides for access to all SCLM processes for heritage code development and support for full Java and Java EE development on the workstation with synchronization to SCLM on the mainframe including building, assembling, and deployment of the Java EE code from the mainframe.
For a list of required SCLM maintenance, see IBM Rational Developer for System z Prerequisites (SC23-7659).
This publication also documents the Ant specifications needed for Java EE builds in SCLM Developer Toolkit.
Attention: SCLM Developer Toolkit
uses ISPF’s TSO/ISPF Client Gateway, which implies that z/OS 1.8 or later is required.
|
As described in PARMLIB changes, SCLM Developer Toolkit requires additional customization of system settings. These changes include the following items:
Also, SCLM Developer Toolkit uses SDSF or the TSO OUTPUT command to retrieve job completion status and job output. Both methods require additional attention:
Users require READ, WRITE, and EXECUTE permission to the z/OS UNIX directories /tmp/ and /var/rdz/WORKAREA/. Directory WORKAREA/ is located in /var/rdz/, unless you specified a different location when you customized and submitted the FEK.SFEKSAMP(FEKSETUP) job. For more details, see Customization setup.
SCLM Developer Toolkit uses the standard ISPF/SCLM skeletons, so ensure that the ISP.SISPSLIB skeleton library is allocated to the ISPSLIB concatenation in ISPF.conf. Using the ISP.SISPSENU data set is optional.
The following sample code shows the ISPF.conf file, which must be customized to match your system environment. Comment lines start with an asterisk (*). Add data sets to the concatenation on the same line and separate the names with a comma (,). For more details on customizing ISPF.conf, see ISPF.conf, the ISPF's TSO/ISPF Client Gateway configuration file.
* REQUIRED:
sysproc=ISP.SISPCLIB,FEK.SFEKPROC
ispmlib=ISP.SISPMENU
isptlib=ISP.SISPTENU
ispplib=ISP.SISPPENU
ispslib=ISP.SISPSLIB
ispllib=ISP.SISPLOAD
* OPTIONAL:
*allocjob = ISP.SISPSAMP(ISPZISP2)
*ISPF_timeout = 900
ispslib=hlq.USERSKEL,ISP.SISPSLIB
SCLM Developer Toolkit uses some directives set in rsed.envvars to locate data sets and directories.
The following code sample shows the SCLMDT directives in rsed.envvars, which must be customized to match your system environment. For more details on customizing rsed.envvars, see rsed.envvars, the RSE configuration file.
_SCLMDT_CONF_HOME=/var/rdz/sclmdt
#STEPLIB=$STEPLIB:FEK.SFEKAUTH:FEK.SFEKLOAD
#_SCLMDT_TRANTABLE=FEK.#CUST.LSTRANS.FILE
#ANT_HOME=/usr/lpp/Apache/Ant/apache-ant-1.7.1
_SCLMDT_BASE_HOME=$RSE_HOME
_SCLMDT_WORK_HOME=$CGI_ISPHOME
CGI_DTWORK=$_SCLMDT_WORK_HOME
SCLM Developer Toolkit provides the ability to store long name files into SCLM. Long file names are files with names that have more than 8 characters or are in mixed case. Storing of long file names is achieved through the use of a VSAM file that contains the mapping of the long file name to the 8-character member name used in SCLM.
To create the long/short name translation VSAM, customize and submit the sample FLM02LST member in the ISP.SISPSAMP ISPF sample library. The configuration steps in this publication require the VSAM to be named FEK.#CUST.LSTRANS.FILE, as shown in the following sample setup JCL.
//FLM02LST JOB <job parameters>
//*
//* CAUTION: This is neither a JCL procedure nor a complete job.
//* Before using this sample, you will have to make the following
//* modifications:
//* 1. Change the job parameters to meet your system requirements.
//* 2. Change ****** to the volume that will hold the VSAM.
//* 3. Change all references of FEK.#CUST.LSTRANS.FILE to
//* match your naming convention for the SCLM translate VSAM.
//*
//CREATE EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
DELETE FEK.#CUST.LSTRANS.FILE
SET MAXCC=0
DEFINE CLUSTER(NAME(FEK.#CUST.LSTRANS.FILE) -
VOLUMES(******) -
RECORDSIZE(58 2048) -
SHAREOPTIONS(3 3) -
CYLINDERS(1 1) -
KEYS(8 0) -
INDEXED) -
DATA (NAME(FEK.#CUST.LSTRANS.FILE.DATA)) -
INDEX (NAME(FEK.#CUST.LSTRANS.FILE.INDEX))
/* DEFINE ALTERNATE INDEX WITH NONUNIQUE KEYS -> ESDS */
DEFINE ALTERNATEINDEX(-
NAME(FEK.#CUST.LSTRANS.FILE.AIX) -
RELATE(FEK.#CUST.LSTRANS.FILE) -
RECORDSIZE(58 2048) -
VOLUMES(******) -
CYLINDERS(1 1) -
KEYS(50 8) -
UPGRADE -
NONUNIQUEKEY) -
DATA (NAME(FEK.#CUST.LSTRANS.FILE.AIX.DATA)) -
INDEX (NAME(FEK.#CUST.LSTRANS.FILE.AIX.INDEX))
/*
//*
//PRIME EXEC PGM=IDCAMS,COND=(0,LT)
//SYSPRINT DD SYSOUT=*
//INITREC DD *
INITREC1
/*
//SYSIN DD *
REPRO INFILE(INITREC) -
OUTDATASET(FEK.#CUST.LSTRANS.FILE)
IF LASTCC = 4 THEN SET MAXCC=0
BLDINDEX IDS(FEK.#CUST.LSTRANS.FILE) -
ODS(FEK.#CUST.LSTRANS.FILE.AIX)
IF LASTCC = 0 THEN -
DEFINE PATH (NAME(FEK.#CUST.LSTRANS.FILE.PATH) -
PATHENTRY (FEK.#CUST.LSTRANS.FILE.AIX))
/*
Before using the long/short name translation, uncomment and set the rsed.envvars environment variable _SCLMDT_TRANTABLE to match the name of the long/short name translation VSAM.
This step is required only if you plan to use the Java EE build support in SCLM.
Apache Ant is an open source Java build tool and can be downloaded from http://ant.apache.org/. Ant consists of text files and scripts, which are distributed in ASCII format and thus require an ASCII/EBCDIC translation to run in z/OS UNIX.
Perform the following steps to implement Ant on z/OS, and to define it to Developer for System z:
JAVA_HOME=/usr/lpp/java/IBM/J6.0
ANT_HOME=/usr/lpp/Apache/Ant/apache-ant-1.7.1
To test that the Ant initialization has been successful:
Example:
export PATH=/usr/lpp/Apache/Ant/apache-ant-1.7.1/bin:$PATH
export PATH=/usr/lpp/java/J6.0/bin:$PATH
Example:
ant -version
Description |
|
Value |
---|---|---|
Developer for System z sample library |
|
|
Developer for System z sample directory |
|
|
Java bin directory |
|
|
Ant bin directory |
|
|
WORKAREA home directory |
|
|
SCLMDT project configuration home directory |
|
|
Long/short name translation VSAM |
|
SCLM Developer Toolkit and ISPF's TSO/ISPF Client Gateway share the same WORKAREA and /tmp directory, both of which might need a periodic cleanup. For more information about this task, see (Optional) WORKAREA and /tmp cleanup.
Customizing Application Deployment Manager adds the CICS Resource Definition (CRD) server, which runs as a CICS application on z/OS to support the following functions:
CICS administrators can find more information about the CRD server in "CICSTS considerations" in the Host Configuration Reference (SC14-7290).
Customize and submit the ADNVCRD job to allocate and initialize the CRD repository VSAM data set. For customization instructions, see the documentation within the member.
ADNVCRD is located in FEK.#CUST.JCL, unless you specified a different location when you customized and submitted the FEK.SFEKSAMP(FEKSETUP) job. For more details, see Customization setup.
Create a separate repository for each CICS primary connection region. Sharing the repository implies that all related CICS regions will use the same values stored in the repository.
Users require read access to the CRD repository, CICS administrators require update access.
Developer for System z provides the administrative utility that enables CICS administrators to provide the default values for CICS resource definitions. These defaults can be read-only, or can be editable by the application developer.
The administrative utility is called by the ADNJSPAU sample job. To use this utility, update access to the CRD repository is required.
ADNJSPAU is located in FEK.#CUST.JCL, unless you specified a different location when you customized and submitted the FEK.SFEKSAMP(FEKSETUP) job. For more details, see Customization setup.
More information is available in "CICSTS considerations" in the Host Configuration Reference (SC14-7290).
CICS Transaction Server version 4.1 and later have an HTTP interface that is designed by using Representational State Transfer (RESTful) principles. This RESTful interface is now the strategic CICSTS interface for use by client applications. The older Web Service interface has been stabilized, and enhancements is for the RESTful interface only.
Application Deployment Manager follows this statement of direction and requires the RESTful CRD server for all services that are new to Developer for System version 7.6 or later.
The RESTful and Web Service interfaces can be active concurrently in a single CICS region, if needed. In this case, two CRD servers are active in the region. Both servers share the same CRD repository. CICS issues some warnings about duplicate definitions when the second interface is defined to the region.
The information in this section describes how to define the CRD server that uses the RESTful interface to communicate with the Developer for System z client.
The RESTful and Web Service interfaces can be active concurrently in a single CICS region, if needed. In this case, two CRD servers are active in the region. Both servers share the same CRD repository. CICS issues some warnings about duplicate definitions when the second interface is defined to the region.
ADNCSDRS is located in FEK.#CUST.JCL, unless you specified a different location when you customized and submitted the FEK.SFEKSAMP(FEKSETUP) job. For more details, see Customization setup.
CEDA INSTALL GROUP(ADNPCRGP)
The CRD server can also be used with one or more additional non-primary connection regions, which are usually Application Owning Regions (AOR).
ADNCSDAR is located in FEK.#CUST.JCL, unless you specified a different location when you customized and submitted the FEK.SFEKSAMP(FEKSETUP) job. For more details, see Customization setup.
CEDA INSTALL GROUP(ADNARRGP)
Transaction | Description |
---|---|
ADMS | For requests from the Manifest Processing tool to change CICS resources. Typically, this is intended for CICS administrators. |
ADMI | For requests that define, install, or uninstall CICS resources. |
ADMR | For all other requests that retrieve CICS environmental or resource information. |
The information in this section describes how to define the CRD server that uses the Web Service interface to communicate with the Developer for System z client.
The RESTful and Web Service interfaces can be active concurrently in a single CICS region, if needed. In this case, two CRD servers are active in the region. Both servers share the same CRD repository. CICS issues some warnings about duplicate definitions when the second interface is defined to the region.
The pipeline message handler (ADNTMSGH) is used for security by processing the user ID and password in the SOAP header. ADNTMSGH is referenced by the sample pipeline configuration file and must therefore be placed into the CICS RPL concatenation. To learn more about the pipeline message handler and the required security setup, see "CICSTS considerations" in the Host Configuration Reference (SC14-7290).
Transaction | Description |
---|---|
ADMS | For requests from the Manifest Processing tool to change CICS resources. Typically, this is intended for CICS administrators. |
ADMI | For requests that define, install or uninstall CICS resources. |
ADMR | For all other requests that retrieve CICS environmental or resource information. |
Customizing ADNTMSGH:
The CRD server must be defined to the primary connection region. This is the region that processes service requests from Developer for System z.
ADNCSDWS is located in FEK.#CUST.JCL, unless you specified a different location when you customized and submitted the FEK.SFEKSAMP(FEKSETUP) job. For more details, see Customization setup.
CEDA INSTALL GROUP(ADNPCRGP)
The CRD server can also be used with one or more additional non-primary connection regions, which are usually Application Owning Regions (AOR).
ADNCSDAR is located in FEK.#CUST.JCL, unless you specified a different location when you customized and submitted the FEK.SFEKSAMP(FEKSETUP)job. For more details, see Customization setup.
CEDA INSTALL GROUP(ADNARRGP)
Developer for System z allows clients to browse and optionally change manifests that describe selected CICS resources. Depending on permissions set by the CICS administrator, changes can be done directly or exported to the manifest repository for further processing by a CICS administrator.
To allocate and initialize the manifest repository VSAM data set, and to define it to the CICS primary connection region, customize and submit the ADNVMFST job. For customization instructions, see the documentation within the member. A separate manifest repository must be created for each CICS primary connection region. All users need update access to the manifest repository.
ADNVMFST is located in FEK.#CUST.JCL, unless you specified a different location when you customized and submitted the FEK.SFEKSAMP(FEKSETUP) job. For more details, see Customization setup.
Similar to the Developer for System z client, the Developer for System z host supports running code analysis tools, which are provided as a separate product, IBM Rational Developer for System z Host Utilities. A benefit of doing code analysis on the host is that it can be integrated in your daily batch processing.
Code review scans source code and reports rule violations, using rules with different severity levels. The tool comes with rule providers for Cobol and PL/I, but other rule providers can be added.
Developer for System z Host Utilities provides a sample procedure, AKGCR, to simplify the calling of code review services in batch mode. AKGCR is found in AKG.#CUST.PROCLIB, unless you specified a different location when you customized and submitted the AKG.SAKGSAMP(AKGSETUP) job.
Customize the sample procedure, AKG.#CUST.PROCLIB(AKGCR), as described within the member, and copy it to SYS1.PROCLIB.
//MYJOB JOB <job parameters>
//PROCS JCLLIB ORDER=(AKG.#CUST.PROCLIB)
Developer for System z Code Review allows for third-party code to be part of the review process. For example, you can provide a rule provider to analyze C/C++ code, or you can enhance the Cobol rule provider to recognize site-specific coding conventions.
Host-based code review is an Eclipse process, just like the Developer for System z client. Therefore, the enhancements done by your development support team for code review on the client can be reused on the host.
The enhancements will consist of Eclipse plugins or Eclipse features. In order to activate them, you must make them available to the existing code, as documented in the AKGCRADD configuration job. AKGCRADD is in AKG.#CUST.JCL, unless you specified a different location when you customized and submitted the AKG.SAKGSAMP(AKGSETUP) job.
Code coverage analyzes a running program and generates a report of lines that are executed, compared to the total number of executable lines. Note that Code coverage sets up a TCP/IP connection, using an ephemeral port, with IBM Debug Tool for z/OS.
Developer for System z Host Utilities provides two ways to invoke Code coverage in batch mode, A sample JCL procedure, to process a single program run, and a set of scripts to start and stop a permanently active Code coverage collector that can process multiple program runs.
The AKGCC sample procedure provides a method to start a Code coverage collector, have it analyze a single program run, stop the collector and archive the results for later usage.
AKGCC is in AKG.#CUST.PROCLIB, unless you specified a different location when you customized and submitted the AKG.SAKGSAMP(AKGSETUP) job.
Customize the sample procedure, AKG.#CUST.PROCLIB(AKGCC), as described within the member, and copy it to SYS1.PROCLIB.
//MYJOB JOB <job parameters>
//PROCS JCLLIB ORDER=(AKG.#CUST.PROCLIB)
Depending on how your software development process is set up, the convenience of having the AKGCC procedure take care of everything might not outweigh the resource and time usage to start a Code coverage collector for each program analysis.
Developer for System z Host Utilities provides the ccstart script to start a Code coverage collector which remains active. This collector can then be used in multiple Code coverage invocations. The ccstop script can be used to stop the collector.
These scripts (ccstart, ccstop, and codecov) are located in /usr/lpp/rdzutil/bin/ if you installed Developer for System z Host Utilities in the default location. Usage of these scripts is documented in the Developer for System z IBM Knowledge Center.
The output of code coverage is intended to be imported into a Developer for System z client, and is therefore written to a z/OS UNIX file. Code coverage is also able to use the results of a previous run and combine them with the results of the current run, resulting in a single report that covers multiple code paths.
For these reasons, Developer for System z Host Utilities does not attempt to remove the output of a code coverage run, and the output will thus accumulate over time.
z/OS UNIX provides a shell script, skulker, that deletes files based on the directory they are in and their age. Combined with the z/OS UNIX cron daemon, which runs commands at specified dates and times, you can set up an automated tool that periodically cleans out targeted directories. Refer to UNIX System Services Command Reference (SA22-7802) for more information about the skulker script and the cron daemon.
This section combines various optional customization tasks. To configure the required service, follow the instructions in the appropriate section.
This customization task does not require assistance, special resources, or special customization tasks for a basic setup. If you enable group support, you
need the assistance of a security administrator or an LDAP administrator
to complete this customization task, which requires the following
resources or special customization tasks:
|
Developer for System z clients version 8.0.1 and later can pull client configuration files and product update information from the host system when they connect, ensuring that all clients have common settings and that they are up-to-date.
z/OS Projects can be defined individually through the z/OS Projects perspective on the client or can be defined centrally on the host system and propagated to the client on an each-user basis. These host-based projects look and function exactly like the projects that are defined on the client except that their structure, members, and properties cannot be modified by the client, and they are accessible only when connected to the host system.
pushtoclient.properties tells the client if these functions are enabled, and where the related data is stored. The data is maintained by a Developer for System z client administrator or a development project manager.
pushtoclient.properties is located in /etc/rdz/, unless you specified a different location when you customized and submitted the FEK.SFEKSAMP(FEKSETUP) job. For more details, see Customization setup. You can edit the file with the TSO OEDIT command. For the changes to take effect, restart the RSED started task.
Since version 8.0.3, the client administrator can create multiple client configuration sets and multiple client update scenarios to fit the needs of different developer groups. These multiple sets and scenarios can be used to provide users with a customized setup, based on criteria such as membership of an LDAP group or permit to a security profile. For more information about supporting multiple groups, see “Push-to-client considerations” in Host Configuration Reference (SC14-7290).
The following code sample shows the pushtoclient.properties file, which must be customized to match your system environment. Comment lines start with a number sign (#) when using a US code page. Data lines can have only a directive and its assigned value. Comments are not allowed on the same line. Line continuations are not supported.
#
# host-based client control
#
config.enabled=false
product.enabled=false
reject.config.updates=false
reject.product.updates=false
accept.product.license=false
primary.system=false
pushtoclient.folder=/var/rdz/pushtoclient
default.store=com.ibm.ftt.configurations.USS
file.permission=RWX.RWX.RX
Developer for System z only provides the com.ibm.ftt.configurations.USS store. A third-party store is needed when the data is located somewhere else.
According to the UNIX standards, permissions can be set for three types of users: owner, group, and other. The fields in the file.permission mask match this order, and the fields are separated by a period (.). Each field can either be empty, or have R, W, RW, X, RX, WX, or RWX as value (where R = read, W = write, X = execute or list directory content).
Key value | Is the related push-to-client function enabled? |
---|---|
False | No, disabled |
True | Yes, enabled for all |
LDAP | Yes, but availability is controlled by membership of LDAP groups |
SAF | Yes, but availability is controlled by permit to security profiles |
You need assistance of a security administrator
to complete this customization task, which requires the following
resources or special customization tasks:
|
External, client-host communication can be encrypted using SSL (Secure Socket Layer). This feature is disabled by default and is controlled by the settings in ssl.properties.
ssl.properties is located in /etc/rdz/, unless you specified a different location when you customized and submitted the FEK.SFEKSAMP(FEKSETUP) job. For more details, see Customization setup. You can edit the file with the TSO OEDIT command. RSE must be restarted for the changes to take effect.
The client communicates with RSE daemon during connection setup and with RSE server during the actual session. Both data streams are encrypted when SSL is enabled.
Certificate storage | Created and managed by | RSE daemon | RSE server |
---|---|---|---|
Key ring | SAF-compliant security product | Supported | Supported |
Key database | z/OS UNIX's gskkyman | Supported | / |
Key store | Java's keytool | / | Supported |
RSE daemon uses System SSL functions to manage SSL. This implies that SYS1.SIEALNKE must be program controlled by the security software and be available to RSE when using LINKLIST or the STEPLIB directive in rsed.envvars.
The following code sample shows the sample ssl.properties file, which must be customized to match your system environment. Comment lines start with a number sign (#) when using a US code page. Data lines can have only a directive and its assigned value; comments are not allowed on the same line. Line continuations are not supported.
# ssl.properties – SSL configuration file
enable_ssl=false
# Daemon Properties
#daemon_keydb_file=
#daemon_keydb_password=
#daemon_key_label=
# Server Properties
#server_keystore_file=
#server_keystore_password=
#server_keystore_label=
#server_keystore_type=JCERACFKS
The daemon and server properties must be set only if you enable SSL. For more information about SSL setup, see "Setting up SSL and X.509 authentication" in the Developer for System z Host Configuration Reference.
Keyword | Key store type |
---|---|
JKS | Java key store |
JCERACFKS | SAF-compliant key ring, where the certificate's private key is stored in the security database. |
JCECCARACFKS | SAF-compliant key ring, where the certificate's private key is stored using ICSF, the interface to System z cryptographic hardware. |
security.provider.1=com.ibm.crypto.hdwrCCA.provider.IBMJCECCA
security.provider.1=com.ibm.crypto.hdwrCCA.provider.IBMJCECCA
security.provider.2=com.ibm.jsse2.IBMJSSEProvider2
security.provider.3=com.ibm.crypto.provider.IBMJCE
security.provider.4=com.ibm.security.jgss.IBMJGSSProvider
security.provider.5=com.ibm.security.cert.IBMCertPath
security.provider.6=com.ibm.security.sasl.IBMSASL
This customization task does not require assistance, special resources, or special customization tasks. |
Developer for System z supports different levels of tracing the internal program flow for problem solving purposes. RSE, and some of the services called by RSE, use the settings in rsecomm.properties to know the required initial detail level in the output logs.
Attention: Changing these settings
can cause performance degradations and should be done only under the
direction of the IBM support
center.
|
rsecomm.properties is located in /etc/rdz/, unless you specified a different location when you customized and submitted FEK.SFEKSAMP(FEKSETUP) job. For more details, see Customization setup. You can edit the file with the TSO OEDIT command.
The following code sample shows the rsecomm.properties file, which can be customized to match your tracing needs. Comment lines start with a number sign (#) when using a US code page. Data lines can have only a directive and its assigned value; comments are not allowed on the same line. Line continuations are not supported.
# server.version - DO NOT MODIFY!
server.version=5.0.0
# Logging level
# 0 - Log error messages
# 1 - Log error and warning messages
# 2 - Log error, warning and info messages
debug_level=1
#USER=userid
#USER=(userid,userid,…)
0 | Log error messages only. |
1 | Log error and warning messages. |
2 | Log error, warning, and informational messages. |
This customization task does not require assistance, special resources, or special customization tasks. |
Content assist for C/C++ can use the definitions in include.conf to do forced includes of specified files or members. A forced include consists of a file or directory, data set, or data set member which will be parsed when a content assist operation is performed, regardless of whether that file or member was included in the source code using a pre-processor directive.
The file must be referenced in rsed.envvars by the include.c or include.cpp variables before it is used. This reference in rsed.envvars implies that you can specify a different file for usage by C and C++. The variables in rsed.envvars are disabled by default.
The sample include.conf is located in /etc/rdz/, unless you specified a different location when you customized and submitted job FEK.SFEKSAMP(FEKSETUP). See Customization setup for more details. You can edit the file with the TSO OEDIT command.
Definitions must start in column 1. Comment lines start with a pound sign (#) when using a US code page. Data lines can only have the name of a directory, file, data set or member. Comments are not allowed on the same line. Line continuations are not supported.
# To include the stdio.h file from the /usr/include directory, input:
# /usr/include/stdio.h
#
# To include all files of the /usr/include directory and all of it's
# sub-directories, input:
# /usr/include
#
# Uncomment and customize variable FILETYPES to limit the z/OS UNIX
# wildcard include to selected (case sensitive) file types:
# The file types are specified in a comma-delimited list (no blanks)
# FILETYPES=H,h,hpp,C,c,cpp,cxx
# To include all members of the CBC.SCLBH.H data set, input:
# //CBC.SCLBH.H
#
# To include the STDIOSTR member of the CBC.SCLBH.H data set, input:
# //CBC.SCLBH.H(STDIOSTR)
# The sample list contains some commonly used C standard library files
/usr/include/assert.h
/usr/include/ctype.h
/usr/include/errno.h
/usr/include/float.h
/usr/include/limits.h
/usr/include/locale.h
/usr/include/math.h
/usr/include/setjmp.h
/usr/include/signal.h
/usr/include/stdarg.h
/usr/include/stddef.h
/usr/include/stdio.h
/usr/include/stdlib.h
/usr/include/string.h
/usr/include/time.h
This customization task does not require assistance, special resources, or special customization tasks. |
REXEC (Remote Execution) is a TCP/IP service that enables clients to execute a command on the host system. SSH (Secure Shell) is a similar service, but all communication is encrypted using SSL (Secure Socket Layer). Developer for System z uses either service for doing remote (host-based) actions in z/OS UNIX subprojects.
REXEC and SSH rely on services provided by INETD (Internet Daemon), which is another TCP/IP service. Communications Server IP Configuration Guide (SC31-8775) describes the steps required to set up INETD, REXEC, and SSH. For more details and alternate setup methods, see the white paper Using INETD, REXEC and SSH with Rational Developer for System z (SC14-7301), available in the Developer for System z library, http://www-01.ibm.com/support/docview.wss?uid=swg27038517.
exec stream tcp nowait OMVSKERN /usr/sbin/orexecd rexecd –LV
exec 512/tcp #REXEC Command Server
The same principle applies to SSH. Its common port is 22, and the server name is sshd.
This customization task does not require assistance, special resources, or special customization tasks. |
Developer for System z supports the interpreting and expanding COBOL and PL/I include statements, including select third-party include statements. Developer for System z also provides a sample REXX exec, FEKRNPLI, that can be called by the Developer for System z client to expand PL/I source by invoking the PL/I compiler.
FEKRNPLI is located in FEK.#CUST.CNTL, unless you specified a different location when you customized and submitted the FEK.SFEKSAMP(FEKSETUP) job. For more details, see Basic customization.
The Developer for System z client uses the TSO Command Service to execute the exec. This implies that if the FEKRNPLI exec is placed in the SYSPROC or SYSEXEC concatenation for the TSO Command Service, the user does not need to know the exact location of the exec. The user only needs to know the name. By default, the TSO Command Service uses the ISPF Client Gateway to create a TSO environment, but APPC is also supported, as documented in the white paper, Using APPC to provide TSO command services (SC14-7291). When using the ISPF Client Gateway, the SYSPROC or SYSEXEC concatenation is defined in ISPF.conf. For more details on customizing this file, see ISPF.conf, the ISPF's TSO/ISPF Client Gateway configuration file.
This customization task does not require
assistance, but does require the following resources or special customization
tasks:
|
Frameworks that assist developers in writing code to perform repeatable, self-checking unit tests are collectively known as xUnit. Developer for System z provides such a framework for unit testing of Enterprise COBOL and PL/I code, called zUnit.
The zUnit test runner also needs access to a load library that holds the different test cases. This library is likely to be unique to a developer.
Customize the sample procedure, FEK.#CUST.PROCLIB(AZUZUNIT), as described within the member, and copy it to SYS1.PROCLIB.
The name of the procedure and the names of the steps in the procedure match the default properties that are included with the Developer for System z client. If the name of a procedure or the name of a step in a procedure is changed, the corresponding properties file on all of the clients must be updated. You should not change the procedure and step names.
//MYJOB JOB <job parameters>
//PROCS JCLLIB ORDER=(FEK.#CUST.PROCLIB)
rsed.envvars is located in /etc/rdz/, unless you specified a different location when you customized and submitted FEK.SFEKSAMP(FEKSETUP) job. For more details, see Customization setup. You can edit the file with the TSO OEDIT command.
The zunit script allows the user to specify data sets that will be added to the STEPLIB directive used by the script.
The zUnit test runner allows for automatic reformatting of test reports. Developer for System z provides sample conversions (for example, conversion to Ant or jUnit format), which are located in /usr/lpp/rdz/samples/zunit/xsd and /usr/lpp/rdz/samples/zunit/xsl, if you installed Developer for System z in the default /usr/lpp/rdz location.
This customization task does not require assistance, special resources, or special customization tasks. |
You need the assistance of a CICS administrator to complete this customization
task, which requires the following resources or special customization
tasks:
|
The Developer for System z Enterprise Service Tools component supports different formats of Arabic and Hebrew interface messages, and bidirectional data presentation and editing in all editors and views. In terminal applications, both left-to-right and right-to-left screens are supported, and numeric fields and fields with opposite-to-screen orientation.
Additional bidirectional features and functionality include the following:
Additionally, Enterprise Service Tools-generated code can support bidi transformation in environments other than CICS SFR (Service Flow Runtime). One example is batch applications. You can make the Enterprise Service Tools generators to include calls to the bidirectional conversion routines by specifying the appropriate bidi transformation options in the Enterprise Service Tools generation wizards and linking the generated programs with the appropriate bidirectional conversion library, FEK.SFEKLOAD.
CEDA DEF PROG(FEJBDCMP) LANG(LE) G(xxx)
CEDA DEF PROG(FEJBDTRX) LANG(LE) G(xxx)
This customization task does not require
assistance, but does require the following resources or special customization
tasks:
|
When the generated code is executed in a CICS transaction, add all IRZM* and IIRZ* modules in FEK.SFEKLMOD to the DFHRPL DD of the CICS region. You should do this by adding the installation data set to the concatenation so that applied maintenance is automatically available.
In all other situations, make all IRZM* and IIRZ* modules in FEK.SFEKLMOD available either through STEPLIB or LINKLIST. You should do this by adding the installation data set to the concatenation so that applied maintenance is automatically available.
If you use STEPLIB, define the modules not available through LINKLIST in the STEPLIB directive of the task that executes the code.
IRZ9999S Failed to retrieve the text of a Language Environment runtime
message. Check that the Language Environment runtime message module for
facility IRZ is installed in DFHRPL or STEPLIB.
You need the assistance of a Security, TCP/IP,
and CICS administrator to complete
this customization task, which requires the following resources or
special customization tasks:
|
The Developer for System z Integrated Debugger host component allows version 9.0.1 and higher clients to debug various Language Environment (LE) based applications. The Integrated Debugger requires z/OS 1.10 or higher.
See the “Integrated Debugger” section of the “Understanding Developer for System z” chapter in the Host Configuration Reference (SC14-7290) for an overview of the Integrated Debugger data flow.
To debug programs written in COBOL v4, the Integrated Debugger needs access to a listing data set (PDS or PDS/E). The data set name can be provided via environment variable AQE_DBG_V4LIST, or DD AQEV4LST. If neither is present, Integrated Debugger will form the data set name by replacing the last qualifier of the executable's data set (for example .LOAD) with .LISTING. Discuss with your developers to see which method is usable at your site.
Normally, only one Language Environment (LE) based debugger, such as the Integrated Debugger, can be active in a given application, CICS region, DB2 stored procedure, or IMS transaction. A good indication that a debugger is an LE-based debugger is that it provides a CEEEVDBG load module or alias that must be available to the application.
However, Integrated Debugger version 9.1.1 and higher can coexist with IBM Debug Tool for z/OS, if Integrated Debugger is loaded first by the application.
If the Developer for System z client uses SSL/TLS encryption to communicate with the RSE daemon, then the (client based) Debug Engine will, by default, also use encryption to communicate with the (host based) Debug Manager. By default, the Debug Engine uses the same certificates as the Developer for System z client.
This implies that the RSE daemon started task and the Debug Manager started task are assumed to be set up similarly when it comes to communication encryption. The following alternate scenario’s are available for situations where encryption settings for RSE daemon and Debug Manager differ:
Unlike RSE daemon, the Debug Manager does not have native support for SSL/TLS encryption. The debug Manager relies on a TCP/IP service called Application Transparent Transport Layer Security (AT-TLS) for encrypted communication. Refer to “Setting up AT-TLS” in the IBM Rational Developer for System z Host Reference Guide (SC14-7290) for a step-by-step setup guide.
CEE3501S The module //IEWBNDD was not found
The Integrated Debugger is capable of using a Language Environment (LE) user exit that reads TEST runtime options from a data set for a given module. This is beneficial for debugging code that is active in subsystems, like IMS transactions and DB2 stored procedures, as it is not possible to provide the TEST runtime options dynamically to this code.
Define the debugger to a CICS region, as documented in the AQECSD sample CSD update job. AQECSD is located in FEK.#CUST.JCL, unless you specified a different location when you customized and submitted job FEK.SFEKSAMP(FEKSETUP). See Customization setup for more details.
To debug DB2 stored procedures, the Integrated Debugger requires the following DB2 related updates.
The following updates are required to use the Integrated Debugger in the remote build procedures provided by Developer for System z. For more information on the function and location of these JCL procedures, see Refer to ELAXF* remote build procedures.
This customization task does not require assistance, special resources, or special customization tasks. |
This customization task does not require assistance, special resources, or special customization tasks for the Developer for System z configuration. However, there are requirements for the IBM Debug Tool for z/OS configuration. |
IBM Debug Tool for z/OS provides a customized Language Environment (LE) user exit, CEEBXITA, which returns the TEST runtime options when called by the LE initialization logic in IMS and DB2 Stored Procedures. IBM Debug Tool for z/OS also provides the Debug Tool extension for the Problem Determination Tools Common Components server, to create and manage the TEST runtime options data set on the z/OS system. Developer for System z can use and enhance IBM Debug Tool for z/OS’s support for managing debug profiles for the IMS and DB2 Stored Procedure run-times.
This customization task does not require assistance, special resources, or special customization tasks for the Developer for System z configuration. However, there are requirements for the IBM File Manager for z/OS configuration. |
Developer for System z's initial integration with IBM File Manager for z/OS has been marked as deprecated in Developer for System z version 8.0.3 and is no longer supported in version 8.5. The services provided by this function have been moved to different areas. Some functions, such as unformatted QSAM editing, are now part of regular data set handling by Developer for System z. More advanced functions, such as formatted data editing using copybooks or include files, require that the IBM File Manager plug-in for Eclipse is installed on the Developer for System z client. This plug-in is available from the IBM Problem Determination Tools Plug-ins web page, http://www-01.ibm.com/software/awdtools/deployment/pdtplugins/.
The IBM File Manager plug-in for Eclipse uses the Problem Determination Tools Server to access the File Manager services. This server is not used by the File Manager ISPF panel interface. Therefore, you have additional File Manager setup tasks, specific for the Problem Determination Tools. For more details, see your File Manager documentation.
The port number used by the Problem Determination Tools server must be specified in the rsed.envvars directive PD_SERVER_PORT.
rsed.envvars is located in /etc/rdz/, unless you specified a different location when you customized and submitted the FEK.SFEKSAMP(FEKSETUP) job. For more details, see Customization setup. You can edit the file with the TSO OEDIT command.
This customization task does not require assistance, special resources, or special customization tasks. |
ISPF's TSO/ISPF Client Gateway and the SCLM Developer Toolkit function use the WORKAREA and /tmp directories to store temporary work files, which are removed before the session is closed. However, temporary output is sometimes left behind, for example, if there is a communication error while processing. Therefore, clear the WORKAREA and /tmp directories from time to time.
z/OS UNIX provides a shell script, skulker, that deletes files according to the directory they are in and their age. Combined with the z/OS UNIX cron daemon, which runs commands at specified dates and times, you can set up an automated tool that periodically cleans targeted directories. For more information about the skulker script and the cron daemon, see UNIX System Services Command Reference (SA22-7802).
After completing the product customization, you can use the Installation Verification Programs (IVPs) described in this chapter to verify the successful setup of key product components.
FEJ211I Server ready to accept connections.
If the job ends with return code 66, then FEK.SFEKAUTH is not APF-authorized.
-------------------------------------------------------------
RSE daemon startup script
-------------------------------------------------------------
arguments: IVP -C/etc/rdz –P
RSE daemon IVP test
CDFMVS08 -- Fri Mar 23 17:50:52 2012 UTC
uid=8(STCRSE) gid=1(STCGROUP)
started from /usr/lpp/rdz/bin/rsed.sh
startup script version Aug09,2012
configuration files located in /etc/rdz –- startup argument
daemon port is 4035 -– set in rsed.envvars
debug level is 1 –- set in rsecomm.properties
TMPDIR=/tmp -- default
-------------------------------------------------------------
current environment variables
-------------------------------------------------------------
@="/usr/lpp/rdz/bin/rsed.sh" @[1]="-C/etc/rdz" @[2]="-P"
ANT_HOME="/usr/lpp/Apache/Ant/apache-ant-1.7.1"
CGI_DTWORK="/var/rdz"
CGI_ISPCONF="/etc/rdz"
CGI_ISPHOME="/usr/lpp/ispf"
CGI_ISPWORK="/var/rdz"
CGI_TRANTABLE="FEK.#CUST.LSTRANS.FILE"
CLASSPATH=".:/usr/lpp/rdz/lib:/usr/lpp/rdz/lib/dstore_core.jar:/usr/lpp/
ERRNO="0"
HOME="/tmp"
IFS="
"
JAVA_HOME="/usr/lpp/java/J6.0"
JAVA_PROPAGATE="NO"
LANG="C"
LIBPATH=".:/usr/lib:/usr/lpp/java/J6.0/bin:/usr/lpp/java/J6.0/bin/classi
LINENO="66"
LOGNAME="STCRSE"
MAILCHECK="600"
OLDPWD="/tmp"
OPTIND="1"
PATH=".:/usr/lpp/java/J6.0/bin:/usr/lpp/rdz/bin:/usr/lpp/ispf/bin:/bin:/
PPID="33554711"
PS1="\$ "
PS2="> "
PS3="#? "
PS4="+ "
PWD="/etc/rdz"
RANDOM="27298"
RSE_CFG="/etc/rdz"
RSE_HOME="/usr/lpp/rdz"
RSE_LIB="/usr/lpp/rdz/lib"
SECONDS="0"
SHELL="/bin/sh"
STEPLIB="NONE"
TMPDIR="/tmp"
TZ="EST5EDT"
X_ARG="-T"
X_C="-- startup argument"
X_KEY="-T"
X_L="-- set in rsecomm.properties"
X_LOG="1"
X_P="-- set in rsed.envvars"
X_PORT="4035"
X_VAL=""
_="-------------------------------------------------------------"
_BPX_SHAREAS="YES"
_BPX_SPAWN_SCRIPT="YES"
_CEE_DMPTARG="/tmp"
_CEE_RUNOPTS="ALL31(ON) HEAP(32M,32K,ANYWHERE,KEEP,,) TRAP(ON)"
_CMDSERV_BASE_HOME="/usr/lpp/ispf"
_CMDSERV_CONF_HOME="/etc/rdz"
_CMDSERV_WORK_HOME="/var/rdz"
_EDC_ADD_ERRNO2="1"
_RSE_ISPF_OPTS="&SESSION=SPAWN"
_RSE_DAEMON_CLASS="com.ibm.etools.zos.server.RseDaemon"
_RSE_DAEMON_IVP_TEST="1"
_RSE_HOST_CODEPAGE="IBM-1047"
_RSE_JAVAOPTS=" -DISPF_OPTS='&SESSION=SPAWN' -DA_PLUGIN_PATH=
_RSE_JMON_PORT="6715"
_RSE_LOG_LEVEL="1"
_RSE_POOL_SERVER_CLASS="com.ibm.etools.zos.server.ThreadPoolProcess"
_RSE_RSED_PORT="4035"
_RSE_SAF_CLASS="/usr/include/java_classes/IRRRacf.jar"
_RSE_SCRIPT_VERSION="Jan09,2012"
_RSE_SERVER_CLASS="org.eclipse.dstore.core.server.Server"
_RSE_SERVER_TIMEOUT="120000"
_SCLMDT_BASE_HOME="/usr/lpp/rdz"
_SCLMDT_CONF_HOME="/var/rdz/sclmdt"
_SCLMDT_TRANTABLE="FEK.#CUST.LSTRANS.FILE"
_SCLMDT_WORK_HOME="/var/rdz"
debug_level="1"
-------------------------------------------------------------
Address Space size limits
-------------------------------------------------------------
current address space size limit is 1913626624 (1825.0 MB)
maximum address space size limit is 2147483647 (2048.0 MB)
-------------------------------------------------------------
service history
-------------------------------------------------------------
Fri Jun 14 13:47:39 2013 -- COPY -- HHOP900 v9000 created 14 Jun 2013
-------------------------------------------------------------
java service level
-------------------------------------------------------------
java full version "J2RE 1.6.0 IBM z/OS build pmz3160sr13-20130207_01(SR13)
-------------------------------------------------------------
LE runtime options
-------------------------------------------------------------
Options Report for Enclave main 05/23/12 1:50:52 PM
Language Environment V01 R11.00
LAST WHERE SET OPTION
-------------------------------------------------------------------------------
Installation default ABPERC(NONE)
Programmer default ABTERMENC(RETCODE)
Installation default NOAIXBLD
Invocation command ALL31(ON)
Programmer default ANYHEAP(32768,16384,ANYWHERE,FREE)
Installation default NOAUTOTASK
Programmer default BELOWHEAP(32768,16384,FREE)
Installation default CBLOPTS(ON)
Installation default CBLPSHPOP(ON)
Installation default CBLQDA(OFF)
Installation default
CEEDUMP(60,SYSOUT=*,FREE=END,SPIN=UNALL
Installation default CHECK(ON)
Installation default COUNTRY(US)
Installation default NODEBUG
Installation default DEPTHCONDLMT(10)
Installation default DYNDUMP(*USERID,NODYNAMIC,TDUMP)
Installation default ENVAR("")
Installation default ERRCOUNT(0)
Installation default ERRUNIT(6)
Installation default FILEHIST
Installation default FILETAG(NOAUTOCVT,NOAUTOTAG)
Default setting NOFLOW
Invocation command HEAP(33554432,32768,ANYWHERE,KEEP,16384
Installation default HEAPCHK(OFF,1,0,0,0)
Installation default HEAPPOOLS(OFF,8,10,32,10,128,10,256,10,
Installation default INFOMSGFILTER(OFF,,,,)
Installation default INQPCOPN
Installation default INTERRUPT(OFF)
Programmer default LIBSTACK(32768,16384,FREE)
Installation default MSGFILE(SYSOUT,FBA,121,0,NOENQ)
Installation default MSGQ(15)
Installation default NATLANG(ENU)
Ignored NONONIPTSTACK(See THREADSTACK)
Installation default OCSTATUS
Installation default NOPC
Installation default PLITASKCOUNT(20)
Programmer default POSIX(ON)
Installation default PROFILE(OFF,"")
Installation default PRTUNIT(6)
Installation default PUNUNIT(7)
Installation default RDRUNIT(5)
Installation default RECPAD(OFF)
Invocation command RPTOPTS(ON)
Installation default RPTSTG(OFF)
Installation default NORTEREUS
Installation default NOSIMVRD
Programmer default
STACK(65536,65536,ANYWHERE,KEEP,524288,131072)
Installation default STORAGE(NONE,NONE,NONE,0)
Installation default TERMTHDACT(TRACE,,96)
Installation default NOTEST(ALL,"*","PROMPT","INSPPREF")
Installation default THREADHEAP(4096,4096,ANYWHERE,KEEP)
Installation default
THREADSTACK(OFF,4096,4096,ANYWHERE,KEEP,131072,
Installation default TRACE(OFF,4096,DUMP,LE=0)
Invocation command TRAP(ON,SPIE)
Installation default UPSI(00000000)
Installation default NOUSRHDLR(,)
Installation default VCTRSAVE(OFF)
Installation default XPLINK(OFF)
Installation default XUFLOW(AUTO)
-------------------------------------------------------------
java startup test...
-------------------------------------------------------------
java full version "JRE 1.6.0 IBM z/OS build pmz3160sr13-20130207_01
(SR13)"
java version "1.6.0"
Java(TM) SE Runtime Environment (build pmz3160sr13-20130207_01(SR13))
IBM J9 VM (build 2.4, JRE 1.6.0 IBM J9 2.4 z/OS s390-31 jvmmz3160sr13-
20130114_1
J9VM - 20130114_134867
JIT - r9_20130108_31100
GC - 20121212_AA)
JCL - 20130204_01
-------------------------------------------------------------
JES Job Monitor test...
-------------------------------------------------------------
executed on CDFMVS08 -- Fri Mar 23 17:50:52 EDT 2012
executed by uid=8(STCRSE) gid=1(STCGROUP)
using /etc/rdz/rsed.envvars
current address space size limit is 1913626624 (1825.0 MB)
maximum address space size limit is 2147483647 (2048.0 MB)
testing JES Job Monitor on port 6715...
hostName=CDFMVS08
hostAddr=9.42.112.75
IPv4 is supported
Waiting for JES Job Monitor response...
ACKNOWLEDGE01v03
Success
-------------------------------------------------------------
TCP/IP IVP test...
-------------------------------------------------------------
executed on CDFMVS08 -- Fri Mar 23 17:50:53 EDT 2012
executed by uid=8(STCRSE) gid=1(STCGROUP)
using /etc/rdz/rsed.envvars
current address space size limit is 1913626624 (1825.0 MB)
maximum address space size limit is 2147483647 (2048.0 MB)
-------------------------------------------------------------
TCP/IP resolver configuration (z/OS UNIX search order):
-------------------------------------------------------------
Resolver Trace Initialization Complete -> 2012/05/23 17:50:54.208378
res_init Resolver values:
Global Tcp/Ip Dataset = None
Default Tcp/Ip Dataset = None
Local Tcp/Ip Dataset = /etc/resolv.conf
Translation Table = Default
UserId/JobName = STCRSE
Caller API = LE C Sockets
Caller Mode = EBCDIC
(L) DataSetPrefix = TCPIP
(L) HostName = CDFMVS08
(L) TcpIpJobName = TCPIP
(L) DomainOrigin = RALEIGH.IBM.COM
(L) NameServer = 9.42.206.2
9.42.206.3
(L) NsPortAddr = 53 (L) ResolverTimeout = 10
(L) ResolveVia = UDP (L) ResolverUdpRetries = 1
(*) Options NDots = 1
(*) SockNoTestStor
(*) AlwaysWto = NO (L) MessageCase = MIXED
(*) LookUp = DNS LOCAL
res_init Succeeded
res_init Started: 2012/05/23 17:50:54.229888
res_init Ended: 2012/05/23 17:50:54.229898
************************************************************************
MVS TCP/IP NETSTAT CS V1R11 TCPIP Name: TCPIP 17:50:54
Tcpip started at 11:31:40 on 05/23/2012 with IPv6 enabled
-------------------------------------------------------------
host IP address:
-------------------------------------------------------------
hostName=CDFMVS08
hostAddr=9.42.112.75
bindAddr=9.42.112.75
localAddr=9.42.112.75
Success, addresses match
-------------------------------------------------------------
RSE daemon IVP ended -- return code 0 -- Fri Mar 23 17:50:55 EDT 2012
-------------------------------------------------------------
FEK002I RseDaemon started. (port=4035)
AQECM001I Debug Manager startup complete (clientport/hostport)
If the job ends with return code 66, then FEK.SFEKAUTH is not APF-authorized.
An active RSE daemon supports the IVP modify command, which you can use to do selected IVPs from the console.
Developer for System z requires that the PassTickets it generates are reusable because PassTicket generation is limited to one for a user every second. Verify the PassTicket reusability by executing the following operator command. Replace userid with a valid TSO user ID.
MODIFY RSED,APPL=IVP PASSTICKET,userid
The command should return an output like that in the following sample:
MODIFY RSED,APPL=IVP PASSTICKET,IBMUSER
+FEK900I PASSTICKET IVP: start: serverid=STCRSE userid=IBMUSER
+FEK900I PASSTICKET IVP: the default applid=FEKAPPL
+FEK900I PASSTICKET IVP: Success, PassTicket IVP finished normally
+FEK901I PASSTICKET IVP Exit code = 0
Verify the RSE daemon connection by executing the following command. Replace userid with a valid TSO user ID.
MODIFY RSED,APPL=IVP DAEMON,userid
This command is functionally identical to the fekfivpd IVP described in Verify the servicesbut with the benefit that no password is required. RSE generates a PassTicket and uses this as password. The command should return an output like that in the following sample:
F RSED,APPL=IVP DAEMON,IBMUSER
+FEK900I DAEMON IVP: SSL is disabled
+FEK900I DAEMON IVP: connected
+FEK900I DAEMON IVP: 1343
+FEK900I DAEMON IVP: 8878350
+FEK900I DAEMON IVP: Success
+FEK901I DAEMON IVP Exit code = 0
Verify the ISPF Client Gateway connection by executing the following command. Replace userid with a valid TSO user ID.
MODIFY RSED,APPL=IVP ISPF,userid
This command is functionally identical to the fekfivpi IVP described in Verify the services. The command should return an output like that in the following sample:
F RSED,APPL=IVP ISPF,IBMUSER
+FEK900I ISPF IVP: executed on CDFMVS08 -- Tue Sep 13 22:29:28 EDT 2011
+FEK900I ISPF IVP: executed by uid=1(IBMUSER) gid=0(SYS1)
+FEK900I ISPF IVP: using /etc/rdz/rsed.envvars
+FEK900I ISPF IVP: current address space size limit is 2147483647
(2048.0 MB)
+FEK900I ISPF IVP: maximum address space size limit is 2147483647
(2048.0 MB)
+FEK900I ISPF IVP: -----------------------------------------------------
--------
+FEK900I ISPF IVP: /etc/rdz/ISPF.conf content:
+FEK900I ISPF IVP: -----------------------------------------------------
--------
+FEK900I ISPF IVP: ispllib=ISP.SISPLOAD
+FEK900I ISPF IVP: ispmlib=ISP.SISPMENU
+FEK900I ISPF IVP: isptlib=ISP.SISPTENU
+FEK900I ISPF IVP: ispplib=ISP.SISPPENU
+FEK900I ISPF IVP: ispslib=ISP.SISPSLIB
+FEK900I ISPF IVP: sysproc=ISP.SISPCLIB,FEK.SFEKPROC
+FEK900I ISPF IVP: -----------------------------------------------------
--------
+FEK900I ISPF IVP: Host install verification for RSE
+FEK900I ISPF IVP: Review IVP log messages from HOST below :
+FEK900I ISPF IVP: -----------------------------------------------------
--------
+FEK900I ISPF IVP: Service level 22Feb2011
+FEK900I ISPF IVP: RSE connection and base TSO/ISPF session initializati
on check only
+FEK900I ISPF IVP: *** CHECK : ENVIRONMENT VARIABLES - key variables
displayed below :
+FEK900I ISPF IVP: Server PATH = .:/usr/lpp/java/J6.0/bin:/usr/l
pp/rdz/bin:/usr/lpp/ispf/bin:/bin:/usr/sbin
+FEK900I ISPF IVP: STEPLIB = NONE
+FEK900I ISPF IVP: Temporary directory = /tmp
+FEK900I ISPF IVP: CGI_ISPHOME = /usr/lpp/ispf
+FEK900I ISPF IVP: CGI_ISPCONF = /etc/rdz
+FEK900I ISPF IVP: CGI_ISPWORK = /var/rdz
+FEK900I ISPF IVP: -----------------------------------------------------
--------
+FEK900I ISPF IVP: *** CHECK : USS MODULES
+FEK900I ISPF IVP: Checking ISPF Directory : /usr/lpp/ispf
+FEK900I ISPF IVP: Checking modules in /usr/lpp/ispf/bin directory
+FEK900I ISPF IVP: Checking for ISPF configuration file ISPF.conf
+FEK900I ISPF IVP: RC=0
+FEK900I ISPF IVP: MSG: SUCCESSFUL
+FEK900I ISPF IVP: -----------------------------------------------------
--------
+FEK900I ISPF IVP: *** CHECK : TSO/ISPF INITIALIZATION
+FEK900I ISPF IVP: ( TSO/ISPF session will be initialized )
+FEK900I ISPF IVP: RC=0
+FEK900I ISPF IVP: MSG: SUCCESSFUL
+FEK900I ISPF IVP: -----------------------------------------------------
--------
+FEK900I ISPF IVP: *** CHECK: Shutting down TSO/ISPF IVP session
+FEK900I ISPF IVP: RC=0
+FEK900I ISPF IVP: MSG: SUCCESSFUL
+FEK900I ISPF IVP: -----------------------------------------------------
--------
+FEK900I ISPF IVP: Host installation verification completed successfully
+FEK900I ISPF IVP: -----------------------------------------------------
--------
+FEK901I ISPF IVP Exit code = 0
fekfivpc | (Optional) CARMA connection |
fekfivpd | RSE daemon connection |
fekfivpi | ISPF's TSO/ISPF Client Gateway connection |
fekfivpj | JES Job Monitor connection |
fekfivps | (Optional) SCLMDT connection |
fekfivpt | TCP/IP setup |
A large region size is required for the user ID that executes the IVPs because functions such as Java, which require a lot of memory, are executed. You should set the region size to 131072 kilobytes (128 megabytes) or more.
CEE5213S The signal SIGPIPE was received.
%z/OS UNIX command%: command was killed by signal number 13
%line-number% *-* %REXX command%
+++ RC(137) +++
All sample commands in this section require certain environment variables to be set. This way, the IVP scripts are available through the PATH statement and the location of the customized configuration files is known. Use the pwd and cd commands to verify and change your current directory to the directory with the customized configuration files. The ivpinit shell script can then be used to set the RSE environment variables, such as in the following sample, where $ is the z/OS UNIX prompt:
$ pwd
/u/userid
$ cd /etc/rdz
$ . ./ivpinit
RSE configuration files located in /etc/rdz --default
added /usr/lpp/rdz/bin to PATH
The first period (.) in . ./ivpinit is a z/OS UNIX command to run the shell in the current environment, so that the environment variables set in the shell are effective even after exiting the shell. The second period (.) is referring to the current directory.
/usr/lpp/rdz/bin/fekfivpr 512 USERID
Also,
if . ./ivpinit is not executed first, all fekfivp* scripts
ask for the location of the customized rsed.envvars.$ EXPORT STEPLIB=$STEPLIB:TCPIP.SEZALOAD
Adding a non-APF authorized library to an existing STEPLIB removes the APF authorization for existing STEPLIB data sets.
If CEE.SCEELKED is in LINKLIST or STEPLIB, TCPIP.SEZALOAD must be placed before CEE.SCEELKED. Failure to do so will result in a 0C1 system abend for the TCP/IP REXX socket calls.
For information about diagnosing host system connection problems, see "Troubleshooting configuration problems" in the Host Configuration Reference (SC14-7290) and the Technotes in the Support section of the Developer for System z website, http://www-03.ibm.com/software/products/us/en/developerforsystemz/ .
The JES Job Monitor and RSE daemon port availability can be verified by issuing the netstat command. The result should show the ports used by these services, as in the following samples:
$ netstat
MVS TCP/IP NETSTAT CS VxRy TCPIP Name: TCPIP 13:57:36
User Id Conn Local Socket Foreign Socket State
------- ---- ------------ -------------- -----
RSED 0000004B 0.0.0.0..4035 0.0.0.0..0 Listen
JMON 00000037 0.0.0.0..6715 0.0.0.0..0 Listen
$ netstat
MVS TCP/IP NETSTAT CS VxRy TCPIP Name: TCPIP 14:03:35
User Id Conn State
------- ---- -----
RSED 0000004B Listen
Local Socket: 0.0.0.0..4035
Foreign Socket: 0.0.0.0..0
JMON 00000037 Listen
Local Socket: 0.0.0.0..6715
Foreign Socket: 0.0.0.0..0
fekfivpt
$ fekfivpt
executed on CDFMVS08 -- Wed Jul 2 13:11:54 EDT 2008
executed by uid=1(USERID) gid=0(GROUP)
using /etc/rdz/rsed.envvars
current address space size limit is 1914675200 (1826.0 MB)
maximum address space size limit is 2147483647 (2048.0 MB)
-------------------------------------------------------------
TCP/IP resolver configuration (z/OS UNIX search order):
-------------------------------------------------------------
Resolver Trace Initialization Complete -> 2008/07/02 13:11:54.745964
res_init Resolver values:
Global Tcp/Ip Dataset = None
Default Tcp/Ip Dataset = None
Local Tcp/Ip Dataset = /etc/resolv.conf
Translation Table = Default
UserId/JobName = USERID
Caller API = LE C Sockets
Caller Mode = EBCDIC
(L) DataSetPrefix = TCPIP
(L) HostName = CDFMVS08
(L) TcpIpJobName = TCPIP
(L) DomainOrigin = RALEIGH.IBM.COM
(L) NameServer = 9.42.206.2
9.42.206.3
(L) NsPortAddr = 53 (L) ResolverTimeout = 10
(L) ResolveVia = UDP (L) ResolverUdpRetries = 1
(*) Options NDots = 1
(*) SockNoTestStor
(*) AlwaysWto = NO (L) MessageCase = MIXED
(*) LookUp = DNS LOCAL
res_init Succeeded
res_init Started: 2008/07/02 13:11:54.755363
res_init Ended: 2008/07/02 13:11:54.755371
************************************************************************
MVS TCP/IP NETSTAT CS V1R9 TCPIP Name: TCPIP 13:11:54
Tcpip started at 01:28:36 on 06/23/2008 with IPv6 enabled
-------------------------------------------------------------
host IP address:
-------------------------------------------------------------
hostName=CDFMVS08
hostAddr=9.42.112.75
bindAddr=9.42.112.75
localAddr=9.42.112.75
Success, addresses match
fekfivpd
After prompting for a password, the command should return an output that is similar to the following sample:
$ fekfivpd
executed on CDFMVS08 -- Wed Jul 2 15:00:27 EDT 2008
executed by uid=1(USERID) gid=0(GROUP)
using /etc/rdz/rsed.envvars
current address space size limit is 1914675200 (1826.0 MB)
maximum address space size limit is 2147483647 (2048.0 MB)
attempting to connect userid USERID using port 4035 ...
Password:
SSL is disabled
connected
8108
570655399
Success
fekfivpj
$ fekfivpj
executed on CDFMVS08 -- Wed Jul 2 15:00:27 EDT 2008
executed by uid=1(USERID) gid=0(GROUP)
using /etc/rdz/rsed.envvars
current address space size limit is 1914675200 (1826.0 MB)
maximum address space size limit is 2147483647 (2048.0 MB)
testing JES Job Monitor on port 6715...
hostName=CDFMVS08
hostAddr=9.42.112.75
IPv4 is supported
Waiting for JES Job Monitor response...
ACKNOWLEDGE01v03
Success
Verify the connection to ISPF's TSO/ISPF client Gateway by executing the following command:
fekfivpi
The command should return the result of ISPF's TSO/ISPF client Gateway-related checks, such as variables, HFS modules, starting and stopping TSO/ISPF session. The output should be similar to what is given in the following sample:
$ fekfivpi
executed on CDFMVS08 -- Wed Jul 2 15:00:27 EDT 2008
executed by uid=1(USERID) gid=0(GROUP)
using /etc/rdz/rsed.envvars
current address space size limit is 1914675200 (1826.0 MB)
maximum address space size limit is 2147483647 (2048.0 MB)
-------------------------------------------------------------
/etc/rdz/ISPF.conf content:
-------------------------------------------------------------
ispmlib=ISP.SISPMENU
isptlib=ISP.SISPTENU
ispplib=ISP.SISPPENU
ispslib=ISP.SISPSLIB
ispllib=ISP.SISPLOAD
sysproc=ISP.SISPCLIB,FEK.SFEKPROC
-------------------------------------------------------------
Host install verification for RSE
Review IVP log messages from HOST below :
-------------------------------------------------------------
RSE connection and base TSO/ISPF session initialization check only
*** CHECK : ENVIRONMENT VARIABLES - key variables displayed below :
Server PATH =
/usr/lpp/java/J6.0/bin:/usr/lpp/rdz/lib:/usr/lpp/ispf/bin:
/bin:/usr/sbin:.
STEPLIB = FEK.SFEKAUTH:FEK.SFEKLOAD
CGI_ISPHOME = /usr/lpp/ispf
CGI_ISPCONF = /etc/rdz
CGI_ISPWORK = /var/rdz
-------------------------------------------------------------
*** CHECK : USS MODULES
Checking ISPF Directory : /usr/lpp/ispf
Checking modules in /usr/lpp/ispf/bin directory
Checking for ISPF configuration file ISPF.conf
RC=0
MSG: SUCCESSFUL
-------------------------------------------------------------
*** CHECK : TSO/ISPF INITIALIZATION
( TSO/ISPF session will be initialized )
RC=0
MSG: SUCCESSFUL
-------------------------------------------------------------
*** CHECK: Shutting down TSO/ISPF IVP session
RC=0
MSG: SUCCESSFUL
-------------------------------------------------------------
Host installation verification completed successfully
-------------------------------------------------------------
fekfivpi has the following optional, non-positional, parameters:
fekfivpc
$ fekfivpc
executed on CDFMVS08 -- Fri Aug 20 14:15:46 EDT 2010
executed by uid=1(USERID) gid=0(GROUP)
using /etc/rdz/rsed.envvars
current address space size limit is 140484608 ( 134.0 MB)
maximum address space size limit is 2147483647 (2048.0 MB)
*** /etc/rdz/CRASRV.properties content:
port.start = 5227
port.range = 100
startup.script.name = /usr/lpp/rdz/bin/carma.startup.rex
clist.dsname = *CRASTART
crastart.stub = /usr/lpp/rdz/bin/CRASTART
crastart.configuration.file = /etc/rdz/crastart.endevor.conf
crastart.syslog = Partial
crastart.timeout = 420
*** Creating /tmp/fekfivpc.log
*** Verifying CARMA installation...
1. Creating CARMA connection (timeout after 60 seconds)
2. Initializing CARMA
3. Retrieving RAM list
The following RAMs were found
00 CA Endevor SCM Unique ID: COM.IBM.CARMA.ENDEVORRAM
4. Getting customization data for RAM 00
5. Initializing RAM 00
6. Retrieving Repository Instance List
Found 6 Repository Instance(s)
7. Terminating RAM 00
8. Terminating CARMA
*** IVP Successful!!!!
Verify the connection to SCLM Developer Toolkit by executing the following command:
fekfivps
The command should return the result of SCLM Developer Toolkit related checks, such as variables, HFS modules, REXX runtime, starting and stopping TSO/ISPF session, and show an output similar to the following sample:
$ fekfivps
executed on CDFMVS08 -- Wed Jul 2 15:00:27 EDT 2008
executed by uid=1(USERID) gid=0(GROUP)
using /etc/rdz/rsed.envvars
current address space size limit is 1914675200 (1826.0 MB)
maximum address space size limit is 2147483647 (2048.0 MB)
-------------------------------------------------------------
/etc/rdz/ISPF.conf content:
-------------------------------------------------------------
ispmlib=ISP.SISPMENU
isptlib=ISP.SISPTENU
ispplib=ISP.SISPPENU
ispslib=ISP.SISPSLIB
ispllib=ISP.SISPLOAD
sysproc=ISP.SISPCLIB,FEK.SFEKPROC
-------------------------------------------------------------
Host install verification for RSE
Review IVP log messages from HOST below :
-------------------------------------------------------------
*** CHECK : ENVIRONMENT VARIABLES - key variables displayed below :
Server PATH = /usr/lpp/java/J6.0/bin:/usr/lpp/rdz/lib:/usr/lpp/ispf/bin:
/bin:/usr/sbin:.
STEPLIB = FEK.SFEKAUTH:FEK.SFEKLOAD
CGI_ISPHOME = /usr/lpp/ispf
CGI_ISPCONF = /etc/rdz
CGI_ISPWORK = /var/rdz
_SCLMDT_CONF_HOME = /var/rdz/sclmdt
_SCLMDT_WORK_HOME = /var/rdz
_SCLMDT_TRANTABLE = FEK.#CUST.LSTRANS.FILE
-------------------------------------------------------------
*** CHECK : JAVA PATH SETUP VERIFICATION
RC=0
MSG: SUCCESSFUL
-------------------------------------------------------------
*** CHECK : USS MODULES
Checking ISPF Directory : /usr/lpp/ispf
Checking modules in /usr/lpp/ispf/bin directory
Checking for ISPF configuration file ISPF.conf
Checking install bin Directory : /usr/lpp/rdz/bin
RC=0
MSG: SUCCESSFUL
-------------------------------------------------------------
*** CHECK : REXX RUNTIME ENVIRONMENT
RC=0
MSG: SUCCESSFUL
-------------------------------------------------------------
*** CHECK : TSO/ISPF INITIALIZATION
( TSO/ISPF session will be initialized )
RC=0
MSG: SUCCESSFUL
-------------------------------------------------------------
*** CHECK: Shutting down TSO/ISPF IVP session
RC=0
MSG: SUCCESSFUL
-------------------------------------------------------------
Host installation verification completed successfully
-------------------------------------------------------------
fekfivps has the following optional, non-positional, parameters:
Customize and submit the sample FEKRACF member, which has sample RACF and z/OS UNIX commands to create the basic security definitions for Developer for System z.
FEKRACF is located in FEK.#CUST.JCL, unless you specified a different location when you customized and submitted the FEK.SFEKSAMP(FEKSETUP) job. For more details, see Customization setup.
See the RACF Command Language Reference (SA22–7687), for more information about RACF commands.
The following sections describe the required steps, optional configuration, and possible alternatives.
Description |
|
Value |
---|---|---|
Developer for System z product high-level qualifier |
|
|
Developer for System z customization high-level qualifier |
|
|
Integrated Debugger started task name |
|
|
JES Job Monitor started task name |
|
|
RSE daemon started task name |
|
|
Application ID |
|
Attention: Some products, such as FTP, require being program controlled if "WHEN PROGRAM" is active. Test this program control before activating it on a production system. |
A RACF OMVS segment or equivalent that specifies a valid non-zero z/OS UNIX user ID (UID), home directory, and shell command must be defined for each user of Developer for System z. Their default group also requires an OMVS segment with a group ID.
When using the optional Integrated Debugger, the user ID under which the application being debugged is active, and its default group also requires a valid RACF OMVS segment or equivalent.
In the following sample RACF commands, replace the #userid, #user-identifier, #group-name, and #group-identifier placeholders with actual values:
ALTUSER #userid
OMVS(UID(#user-identifier) HOME(/u/#userid) PROGRAM(/bin/sh) NOASSIZEMAX)
The following sample RACF commands create the DBGMGR, JMON, and RSED started tasks, with protected user IDs (STCDBM, STCJMON, and STCRSE) and the STCGROUP group assigned to them. Replace the #group-id and #user-id-* placeholders with valid OMVS IDs.
ADDGROUP STCGROUP OMVS(AUTOGID)
DATA('GROUP WITH OMVS SEGMENT FOR STARTED TASKS')
ADDUSER STCDBM DFLTGRP(STCGROUP) NOPASSWORD NAME('RDZ – DEBUG MANAGER')
OMVS(AUTOUID HOME(/tmp) PROGRAM(/bin/sh) )
DATA('RATIONAL DEVELOPER FOR SYSTEM Z')
ADDUSER STCJMON DFLTGRP(STCGROUP) NOPASSWORD NAME('RDZ - JES JOBMONITOR')
OMVS(AUTOUID HOME(/tmp) PROGRAM(/bin/sh) )
DATA('RATIONAL DEVELOPER FOR SYSTEM Z')
ADDUSER STCRSE DFLTGRP(STCGROUP) NOPASSWORD NAME('RDZ - RSE DAEMON')
OMVS(AUTOUID HOME(/tmp) PROGRAM(/bin/sh) ASSIZEMAX(2147483647) )
DATA('RATIONAL DEVELOPER FOR SYSTEM Z')
RDEFINE STARTED DBGMGR.* DATA('RDZ – DEBUG MANAGER')
STDATA(USER(STCDBM) GROUP(STCGROUP) TRUSTED(NO))
RDEFINE STARTED JMON.* DATA('RDZ - JES JOBMONITOR')
STDATA(USER(STCJMON) GROUP(STCGROUP) TRUSTED(NO))
RDEFINE STARTED RSED.* DATA('RDZ - RSE DAEMON')
STDATA(USER(STCRSE) GROUP(STCGROUP) TRUSTED(NO))
ALTUSER STCRSE RESTRICTED
To ensure that restricted users do not gain access to z/OS UNIX file system resources through the “other” permission bits, define the RESTRICTED.FILESYS.ACCESS profile in the UNIXPRIV class with UACC(NONE). For more information about restricting user IDs, see Security Server RACF Security Administrator's Guide (SA22-7683).
Attention: If you use restricted
user IDs, explicitly add the permission to access a resource by using
the TSO PERMIT or the z/OS UNIX setfacl commands.
The resources include those resources where the Developer
for System z documentation
uses UACC, such as the ** profile in the PROGRAM class,
or where it relies on common z/OS UNIX conventions, such as everyone
having read and execute permission for Java libraries.
Test the access before activating it on a production system.
|
RSE requires UPDATE access to the BPX.SERVER profile to create or delete the security environment for the client’s thread. If this profile is not defined, UID(0) is required for RSE. This step is required for clients to be able to connect.
Integrated Debugger requires UPDATE access to the BPX.SERVER profile to create or delete the security environment for the debug thread. If this profile is not defined, UID(0) is required for the STCDBM started task user ID. This permit is only required when the optional Integrated Debugger feature is used.
Attention: Defining the BPX.SERVER profile
makes z/OS UNIX as a whole switch from UNIX level security to z/OS UNIX level
security, which is more secure. This switch might impact other z/OS UNIX applications
and operations. Test the security before activating it on a production
system. For more information about the different security levels,
see UNIX System Services
Planning (GA22-7800).
|
Servers with authority to BPX.SERVER must run in a clean, program-controlled environment. This requirement implies that all programs called by RSE must also be program controlled. For MVS load libraries, program control is managed by your security software. This step is required for clients to be able to connect.
The following additional prerequisite libraries must be made program controlled to support the use of optional services. This list does not include data sets that are specific to a product that Developer for System z interacts with, such as IBM File Manager.
The client's password or other means of identification, such as an X.509 certificate is used only to verify the identity upon connection. Afterward, PassTickets are used to maintain thread security. This step is required for clients to be able to connect.
RDEFINE PTKTDATA FEKAPPL UACC(NONE) SSIGNON(KEYMASKED(key16))
APPLDATA('NO REPLAY PROTECTION – DO NOT CHANGE')
DATA('RATIONAL DEVELOPER FOR SYSTEM Z')
RDEFINE PTKTDATA IRRPTAUTH.FEKAPPL.* UACC(NONE)
DATA('RATIONAL DEVELOPER FOR SYSTEM Z')
PERMIT IRRPTAUTH.FEKAPPL.* CLASS(PTKTDATA) ACCESS(UPDATE) ID(STCRSE)
SETROPTS RACLIST(PTKTDATA) REFRESH
RSE supports the using of an application ID other than FEKAPPL. Uncomment and customize the "APPLID=FEKAPPL" option in rsed.envvars to activate this, as documented in Defining extra Java startup parameters with _RSE_JAVAOPTS. The PTKTDATA class definitions must match the actual application ID used by RSE.
Attention: The client connection
request fails if PassTickets are not set up correctly.
|
The MODIFY LOGS operator command uses the RSED started task user ID to collect host logs and setup information. And by default, user log files are created with secure file access permissions (only owner has access). To be able to collect secure user log files, the RSED started task user ID must be permitted to read them.
The OWNER argument of the MODIFY LOGS operator command results in the specified user ID becoming the owner of the collected data. In order to change ownership, the RSED started task user ID must be permitted to use the CHOWN z/OS UNIX service.
Note that when the SUPERUSER.FILESYS.ACLOVERRIDE profile is defined, access permissions defined in ACL (access Control List) take precedence over the permissions granted through SUPERUSER.FILESYS. The RSED started task user ID will need READ access permit to the SUPERUSER.FILESYS.ACLOVERRIDE profile to bypass ACL definitions.
During client logon, RSE daemon verifies that a user is allowed to use the application.
RDEFINE APPL FEKAPPL UACC(READ) DATA('RATIONAL DEVELOPER FOR SYSTEM Z')
SETROPTS RACLIST(APPL) REFRESH
Servers with authority to BPX.SERVER must run in a clean, program-controlled environment. This requirement implies that all programs called by RSE must also be program controlled. For z/OS UNIX files, program control is managed by the extattr command. To execute this command, you need READ access to BPX.FILEATTR.PROGCTL in the FACILITY class, or be UID(0).
$ ls -Eog /usr/lib/libIRRRacf*.so
-rwxr-xr-x aps- 2 69632 Oct 5 2007 /usr/lib/libIRRRacf.so
-rwxr-xr-x aps- 2 69632 Oct 5 2007 /usr/lib/libIRRRacf64.so
JES Job Monitor issues all JES operator commands requested by a user through an extended MCS (EMCS) console, whose name is controlled with the CONSOLE_NAME directive, as documented in FEJJCNFG, the JES Job Monitor configuration file .
RDEFINE OPERCMDS MVS.MCSOPER.#console UACC(READ)
DATA('RATIONAL DEVELOPER FOR SYSTEM Z')
RDEFINE OPERCMDS JES%.** UACC(NONE)
PERMIT JES%.** CLASS(OPERCMDS) ACCESS(UPDATE) WHEN(CONSOLE(JMON)) ID(*)
SETROPTS RACLIST(OPERCMDS) REFRESH
Attention: Defining JES commands
with universal access NONE in your security software
might impact other applications and operations. Test the security
before activating it on a production system.
|
Table 22 and Table 23 show the operator commands issued for JES2 and JES3, and the discrete security profiles that can be used to protect them.
Action | Command | OPERCMDS profile | Required access |
---|---|---|---|
Hold | $Hx(jobid) with x = {J, S or T} |
|
UPDATE |
Release | $Ax(jobid) with x = {J, S or T} |
|
UPDATE |
Cancel | $Cx(jobid) with x = {J, S or T} |
|
UPDATE |
Purge | $Cx(jobid),P with x = {J, S or T} |
|
UPDATE |
Action | Command | OPERCMDS profile | Required access |
---|---|---|---|
Hold | *F,J=jobid,H |
|
UPDATE |
Release | *F,J=jobid,R |
|
UPDATE |
Cancel | *F,J=jobid,C |
|
UPDATE |
Purge | *F,J=jobid,C |
|
UPDATE |
Assuming the identity of the JES Job Monitor server by creating a JMON console from a TSO session is prevented by your security software. Even though the console can be created, the point of entry is different; for example, JES Job Monitor versus TSO. JES commands issued from this console will fail the security check if your security is set up as documented in this publication and the user does not have authority to the JES commands through other means.
Users require READ access to one of the listed AQE.AUTHDEBUG.* profiles to be able to use the Integrated Debugger for debugging problem-state programs. Users permitted to the AQE.AUTHDEBUG.AUTHPGM profile are also allowed to debug APF authorized programs. Replace the #apf placeholder with valid user IDs or RACF group names for those users that are allowed to debug authorized programs.
RDEFINE FACILITY AQE.AUTHDEBUG.STDPGM UACC(NONE)
PERMIT AQE.AUTHDEBUG.STDPGM CLASS(FACILITY) ACCESS(READ) ID(*)
RDEFINE FACILITY AQE.AUTHDEBUG.AUTHPGM UACC(NONE)
PERMIT AQE.AUTHDEBUG.AUTHPGM CLASS(FACILITY) ACCESS(READ) ID(#apf)
SETROPTS RACLIST(FACILITY) REFRESH
READ access for users and ALTER for system programmers is sufficient for most Developer for System z data sets. Replace the #sysprog placeholder with valid user IDs or RACF group names. Also, ask the system programmer who installed and configured the product for the correct data set names. FEK is the default high-level qualifier used during installation and FEK.#CUST is the default high-level qualifier for data sets created during the customization process.
ADDGROUP (FEK) OWNER(IBMUSER) SUPGROUP(SYS1)
DATA('RATIONAL DEVELOPER FOR SYSTEM Z - HLQ STUB')
ADDSD 'FEK.*.**' UACC(READ)
DATA('RATIONAL DEVELOPER FOR SYSTEM Z')
PERMIT 'FEK.*.**' CLASS(DATASET) ACCESS(ALTER) ID(#sysprog)
SETROPTS GENERIC(DATASET) REFRESH
ADDSD 'FEK.#CUST.LSTRANS.*.**' UACC(UPDATE)
DATA('RATIONAL DEVELOPER FOR SYSTEM Z - SCLMDT')
PERMIT 'FEK.#CUST.LSTRANS.*.**' CLASS(DATASET) ACCESS(ALTER) ID(#sysprog)
SETROPTS GENERIC(DATASET) REFRESH
ADDSD 'FEK.#CUST.CRA*.**' UACC(READ)
DATA('RATIONAL DEVELOPER FOR SYSTEM Z - CARMA')
PERMIT 'FEK.#CUST.CRA*.**' CLASS(DATASET) ACCESS(ALTER) ID(#sysprog)
PERMIT 'FEK.#CUST.CRA*.**' CLASS(DATASET) ACCESS(UPDATE) ID(#ram-developer)
SETROPTS GENERIC(DATASET) REFRESH
ADDSD 'FEK.#CUST.ADNREP*.**' UACC(READ)
DATA('RATIONAL DEVELOPER FOR SYSTEM Z - ADN')
PERMIT 'FEK.#CUST.ADNREP*.**' CLASS(DATASET) ACCESS(ALTER) ID(#sysprog)
PERMIT 'FEK.#CUST.ADNREP*.**' CLASS(DATASET) ACCESS(UPDATE) ID(#cicsadmin)
SETROPTS GENERIC(DATASET) REFRESH
ADDSD 'FEK.#CUST.ADNMAN*.**' UACC(UPDATE)
DATA('RATIONAL DEVELOPER FOR SYSTEM Z - ADN')
PERMIT 'FEK.#CUST.ADNMAN*.**' CLASS(DATASET) ACCESS(ALTER) ID(#sysprog)
SETROPTS GENERIC(DATASET) REFRESH
ADDGROUP (FEK)
DATA('RATIONAL DEVELOPER FOR SYSTEM Z - HLQ STUB')
OWNER(IBMUSER) SUPGROUP(SYS1)"
ADDSD 'FEK.*.**' UACC(NONE)
DATA('RATIONAL DEVELOPER FOR SYSTEM Z')
ADDSD 'FEK.SFEKAUTH' UACC(NONE)
DATA('RATIONAL DEVELOPER FOR SYSTEM Z')
ADDSD 'FEK.SFEKLOAD' UACC(NONE)
DATA('RATIONAL DEVELOPER FOR SYSTEM Z')
ADDSD 'FEK.SFEKLMOD' UACC(NONE)
DATA('RATIONAL DEVELOPER FOR SYSTEM Z')
ADDSD 'FEK.SFEKPROC' UACC(NONE)
DATA('RATIONAL DEVELOPER FOR SYSTEM Z')
ADDSD 'FEK.#CUST.PARMLIB' UACC(NONE)
DATA('RATIONAL DEVELOPER FOR SYSTEM Z')
ADDSD 'FEK.#CUST.CNTL' UACC(NONE)
DATA('RATIONAL DEVELOPER FOR SYSTEM Z')
ADDSD 'FEK.#CUST.SQL' UACC(NONE)
DATA('RATIONAL DEVELOPER FOR SYSTEM Z')
ADDSD 'FEK.#CUST.LSTRANS.*.**' UACC(NONE)
DATA('RATIONAL DEVELOPER FOR SYSTEM Z - SCLMDT')
ADDSD 'FEK.#CUST.CRA*.**' UACC(NONE)
DATA('RATIONAL DEVELOPER FOR SYSTEM Z - CARMA')
ADDSD 'FEK.#CUST.ADNREP*.**' UACC(NONE)
DATA('RATIONAL DEVELOPER FOR SYSTEM Z - ADN')
ADDSD 'FEK.#CUST.ADNMAN*.**' UACC(NONE)
DATA('RATIONAL DEVELOPER FOR SYSTEM Z - ADN')
PERMIT 'FEK.*.** CLASS(DATASET) ACCESS(ALTER) ID(#sysprog)
PERMIT 'FEK.SFEKAUTH CLASS(DATASET) ACCESS(ALTER) ID(#sysprog)
PERMIT 'FEK.SFEKLOAD CLASS(DATASET) ACCESS(ALTER) ID(#sysprog)
PERMIT 'FEK.SFEKLMOD CLASS(DATASET) ACCESS(ALTER) ID(#sysprog)
PERMIT 'FEK.SFEKPROC CLASS(DATASET) ACCESS(ALTER) ID(#sysprog)
PERMIT 'FEK.#CUST.PARMLIB CLASS(DATASET) ACCESS(ALTER) ID(#sysprog)
PERMIT 'FEK.#CUST.CNTL CLASS(DATASET) ACCESS(ALTER) ID(#sysprog)
PERMIT 'FEK.#CUST.SQL CLASS(DATASET) ACCESS(ALTER) ID(#sysprog)
PERMIT 'FEK.#CUST.LSTRANS.*.**' CLASS(DATASET) ACCESS(ALTER) ID(#sysprog)
PERMIT 'FEK.#CUST.CRA*.**' CLASS(DATASET) ACCESS(ALTER) ID(#sysprog)
PERMIT 'FEK.#CUST.ADNREP*.**' CLASS(DATASET) ACCESS(ALTER) ID(#sysprog)
PERMIT 'FEK.#CUST.ADNMAN*.**' CLASS(DATASET) ACCESS(ALTER) ID(#sysprog)
PERMIT 'FEK.SFEKAUTH' CLASS(DATASET) ACCESS(READ) ID(*)
PERMIT 'FEK.SFEKLOAD' CLASS(DATASET) ACCESS(READ) ID(*)
PERMIT 'FEK.SFEKPROC' CLASS(DATASET) ACCESS(READ) ID(*)
PERMIT 'FEK.#CUST.CNTL' CLASS(DATASET) ACCESS(READ) ID(*)
PERMIT 'FEK.#CUST.SQL' CLASS(DATASET) ACCESS(READ) ID(*)
PERMIT 'FEK.SFEKAUTH' CLASS(DATASET) ACCESS(READ) ID(STCJMON)
PERMIT 'FEK.#CUST.PARMLIB' CLASS(DATASET) ACCESS(READ) ID(STCJMON)
PERMIT 'FEK.#CUST.LSTRANS.*.**' CLASS(DATASET) ACCESS(UPDATE) ID(*)
PERMIT 'FEK.#CUST.CRA*.**' CLASS(DATASET) ACCESS(UPDATE) ID(#ram-developer)
PERMIT 'FEK.#CUST.ADNREP*.**' CLASS(DATASET) ACCESS(READ) ID(*)
PERMIT 'FEK.#CUST.ADNREP*.**' CLASS(DATASET) ACCESS(UPDATE) ID(#cicsadmin)
PERMIT 'FEK.#CUST.ADNMAN*.**' CLASS(DATASET) ACCESS(UPDATE) ID(*)
PERMIT 'FEK.SFEKLOAD' CLASS(DATASET) ACCESS(READ) ID(#cicsts)
PERMIT 'FEK.SFEKLMOD' CLASS(DATASET) ACCESS(READ) ID(#cicsts)
PERMIT 'FEK.SFEKLMOD' CLASS(DATASET) ACCESS(READ) ID(#ims)
PERMIT 'FEK.SFEKLMOD' CLASS(DATASET) ACCESS(READ) ID(#batch)
SETROPTS GENERIC(DATASET) REFRESH
Use the following sample commands to display the results of your security-related customizations.
If you are a previous user of Developer for System z, save the related customized files before installing this version of IBM Developer for System z.
Add optional SVC.
Set z/OS UNIX system defaults.
Start servers at IPL time.
Add FEK.SFEKLPA to LPA.
Add FEK.SFEKAUTH and FEK.SFEKLOAD to LINKLIST.
Assign an application environment for a DB2 stored procedure.
The following migration notes are specific to IBM Rational Developer for System z version 9.1. These notes are valid for migration fromIBM Rational Developer for System zversion 9.1.0 to version 9.1.1, and they are additions to the existing version 9.1.0 migration notes.
All of the listed changes are valid since version 9.1.1.
These notes are for a migration from a base version 9.0 to version 9.1. It includes changes that are already documented as part of version 9.0 maintenance. The changes that are part of the maintenance stream, and thus possibly already implemented, are marked with the release where they were introduced.
It is advised to replace an existing rsed.envvars (by default in /etc/rdz) with the newly provided sample (by default in /usr/lpp/rdz/samples) and redo the customizations.
Table 24 shows an overview of files that are customized in version 9.1.0. The Developer for System z sample libraries, FEK.SFEKSAMP, FEK.SFEKSAMV and /usr/lpp/rdz/samples/, contain more customizable members than listed here, such as sample CARMA source code and jobs to compile them.
Member/File | Default location | Purpose | Migration notes |
---|---|---|---|
FEKSETUP |
|
JCL to create data sets and directories, and populate them with customizable files | Updated to remove actions for files that are no longer used and add actions for new files |
JMON |
|
JCL for JES Job Monitor | None |
FEJJJCL |
|
Name for JMON member | See JMON member |
RSED |
|
JCL for RSE daemon | None |
FEKRSED |
|
Name for RSED member | See RSED member |
DBGMGR |
|
JCL for Debug Manager | New, customization is optional |
AQEJCL |
|
Name for DBGMGR member | See DBGMBR member |
ELAXF* |
|
JCL for remote project builds, and so on | ELAXFGO includes SFEKAUTH in STEPLIB |
FEKRACF |
|
JCL for security definitions | New, started task DBGMGR |
AQERACF |
|
JCL for Debug Manager | New, customization is optional |
FEKPBITS |
|
JCL to alter access permits for log files | New, customization is optional |
FEJJCNFG |
|
JES Job Monitor configuration file | None |
FEJTSO |
|
JCL for TSO submits | None |
CRA$VMSG |
|
JCL to create the CARMA message VSAM | None |
CRA$VDEF |
|
JCL to create the CARMA configuration VSAM | None |
CRA$VSTR |
|
JCL to create the CARMA custom information VSAM | None |
CRA$VCAD |
|
JCL to create the CARMA configuration VSAM for CA Endevor® SCM RAM | VSAM input has changed |
CRA$VCAS |
|
JCL to create the CARMA custom information VSAM for CA Endevor® SCM RAM | VSAM input has changed |
CRASUBMT |
|
CARMA batch startup CLIST | Added support for 8 startup arguments, DD CRAPARM and allocation exec |
CRASUBCA |
|
CARMA batch startup CLIST for CA Endevor® SCM RAM | Added support for 8 startup arguments, DD CRAPARM and new DD’s |
CRACFG |
|
CARMA interaction configuration for CA Endevor® SCM RAM | New, configuration is optional |
CRABCFG |
|
CARMA batch actions configuration for CA Endevor® SCM RAM | None |
CRABATCA |
|
CARMA batch action JCL for CA Endevor® SCM RAM | None |
CRASHOW |
|
CARMA configuration for CA Endevor® SCM RAM | None |
CRATMAP |
|
CARMA configuration for CA Endevor® SCM RAM | None |
CRANDVRA |
|
CARMA allocation REXX for CA Endevor® SCM RAM | Added support for user exit and allocate new DD |
CRAALLOC |
|
CARMA allocation REXX | New, configuration is optional |
CRA#VSLM |
|
JCL to create the SCLM RAM's message VSAM | None |
CRA#ASLM |
|
JCL to create the SCLM RAM's data sets | None |
CRA#VPDS |
|
JCL to create the PDS RAM's message VSAM | None |
CRA#UADD |
|
JCL to merge RAM definitions | None |
CRA#UQRY |
|
JCL to extract RAM definitions | None |
CRAXJCL |
|
Sample source code for IRXJCL replacement | None |
CRA#CIRX |
|
JCL to compile CRAXJCL | None |
AQECSD |
|
JCL to define Integrated Debugger to CICS regions | New, configuration is optional |
AQED3CEE |
|
JCL to create customized LE runtime modules | New, configuration is optional |
AQED3CXT |
|
JCL to create LE user exit | New, configuration is optional |
ADNCSDRS |
|
JCL to define the RESTful CRD server to primary CICS region | None |
ADNCSDTX |
|
JCL to define alternate transaction IDs to CICS region | None |
ADNTXNC |
|
JCL to create alternate transaction IDs | None |
ADNMSGHC |
|
JCL to compile ADNMSGHS | None |
ADNMSGHS |
|
Sample source code for the Pipeline Message Handler | None |
ADNVCRD |
|
JCL to create the CRD repository | None |
ADNCSDWS |
|
JCL to define the Web Service CRD server to primary CICS region | None |
ADNCSDAR |
|
JCL to define the CRD server to non-primary CICS regions | None |
ADNJSPAU |
|
JCL to update the CRD defaults | None |
ADNVMFST |
|
JCL to create and define the Manifest repository | None |
FEKTEP2 |
|
SQL command input used by ELAXF* | None |
FEKTIAD |
|
SQL command input used by ELAXF* | None |
AZUZUNIT |
|
JCL procedure for zUnit | None |
FEKRNPLI |
|
REXX to call the PL/I compiler from within the preprocessor framework | None |
FEKLOGS |
|
JCL to collect log files | None |
rsed.envvars |
|
RSE environment variables | Older copies must be replaced by this one and the customizations done again. |
ISPF.conf |
|
TSO/ISPF Client Gateway configuration file | None |
CRASRV.properties |
|
CARMA configuration file | Added support for user exit |
crastart.conf |
|
CARMA configuration file for CRASTART usage | Added support for 8 startup arguments, DD CRAPARM and allocation exec |
crastart.endevor.conf |
|
CARMA configuration file for CRASTART usage for CA Endevor® SCM RAM | Added support for 8 startup arguments, DD CRAPARM and new DD’s |
include.conf |
|
Forced includes for C/C++ content assist | None |
ssl.properties |
|
RSE SSL configuration file | None |
rsecomm.properties |
|
RSE trace configuration file | Added support for USER keyword |
pushtoclient.properties |
|
Push information to the client configuration file | None |
Table 25 shows an overview of files that are customized in version 9.1. The Developer for System z Host Utilities sample libraries, AKG.SAKGSAMP and /usr/lpp/rdzutil/samples, contain more customizable members than listed here, such as sample code review post-processing script.
Member or File | Default location | Purpose | Migration notes |
---|---|---|---|
AKGSETUP |
|
JCL to create data sets, and populate them with customizable files | None |
AKGCC |
|
JCL for code coverage | None |
AKGCR |
|
JCL for code review | New DDs BIMPORT and BEXPORT |
AKGCRADD |
|
JCL to add third-party code to code review | None |
These notes are for a migration from a base version 8.5 to version 9.0. It includes changes that are already documented as part of version 8.5 maintenance. The changes that are part of the maintenance stream, and thus possibly already implemented, are marked with the release where they were introduced.
Table 26 shows an overview of files that are customized in version 9.0. The Developer for System z sample libraries, FEK.SFEKSAMP, FEK.SFEKSAMV and /usr/lpp/rdz/samples/, contain more customizable members than listed here, such as sample CARMA source code and jobs to compile them.
Member/File | Default location | Purpose | Migration notes |
---|---|---|---|
FEKSETUP |
|
JCL to create data sets and directories, and populate them with customizable files | Updated to remove actions for files that are no longer used and add actions for new files |
JMON |
|
JCL for JES Job Monitor | None |
FEJJJCL |
|
Name for JMON member | See JMON member |
RSED |
|
JCL for RSE daemon | None |
FEKRSED |
|
Name for RSED member | See RSED member |
ELAXF* |
|
JCL for remote project builds, and so on | ELAXFSP and ELAXFSQL are new, ELAXFCOC and ELAXFCP1 are updated for Cobol Version 5 support |
FEKRACF |
|
JCL for security definitions | None |
FEJJCNFG |
|
JES Job Monitor configuration file | New optional directives have been added. Existing optional directives have been removed. |
FEJTSO |
|
JCL for TSO submits | None |
CRA$VMSG |
|
JCL to create the CARMA message VSAM | None |
CRA$VDEF |
|
JCL to create the CARMA configuration VSAM | Added support to exclude RAMs |
CRA$VSTR |
|
JCL to create the CARMA custom information VSAM | None |
CRA$VCAD |
|
JCL to create the CARMA configuration VSAM for CA Endevor® SCM RAM | Added support to exclude RAMs and VSAM input has changed. |
CRA$VCAS |
|
JCL to create the CARMA custom information VSAM for CA Endevor® SCM RAM | VSAM input has changed |
CRASUBMT |
|
CARMA batch startup CLIST | None |
CRASUBCA |
|
CARMA batch startup CLIST for CA Endevor® SCM RAM | None |
CRABCFG |
|
CARMA batch actions configuration for CA Endevor® SCM RAM | New directives added |
CRABATCA |
|
CARMA batch action JCL for CA Endevor® SCM RAM | Added support for variable JOB card |
CRASHOW |
|
CARMA configuration for CA Endevor® SCM RAM | None |
CRATMAP |
|
CARMA configuration for CA Endevor® SCM RAM | None |
CRANDVRA | FEK.SFEKPROC | CARMA allocation REXX for CA Endevor® SCM RAM | Added new DD allocations |
CRA#VSLM |
|
JCL to create the SCLM RAM's message VSAM | None |
CRA#ASLM |
|
JCL to create the SCLM RAM's data sets | None |
CRA#VPDS |
|
JCL to create the PDS RAM's message VSAM | None |
CRA#UADD |
|
JCL to merge RAM definitions | None |
CRA#UQRY |
|
JCL to extract RAM definitions | None |
CRAXJCL |
|
Sample source code for IRXJCL replacement | None |
CRA#CIRX |
|
JCL to compile CRAXJCL | None |
ADNCSDRS |
|
JCL to define the RESTful CRD server to primary CICS region | None |
ADNCSDTX |
|
JCL to define alternate transaction IDs to CICS region | None |
ADNTXNC |
|
JCL to create alternate transaction IDs | None |
ADNMSGHC |
|
JCL to compile ADNMSGHS | None |
ADNMSGHS |
|
Sample source code for the Pipeline Message Handler | None |
ADNVCRD |
|
JCL to create the CRD repository | None |
ADNCSDWS |
|
JCL to define the Web Service CRD server to primary CICS region | None |
ADNCSDAR |
|
JCL to define the CRD server to non-primary CICS regions | None |
ADNJSPAU |
|
JCL to update the CRD defaults | None |
ADNVMFST |
|
JCL to create and define the Manifest repository | None |
FEKTEP2 |
|
SQL command input used by ELAXF* | New, customization is optional |
FEKTIAD |
|
SQL command input used by ELAXF* | New, customization is optional |
AZUZUNIT |
|
JCL procedure for zUnit | None |
FEKRNPLI |
|
REXX to call the PL/I compiler from within the preprocessor framework | None |
FEKLOGS |
|
JCL to collect log files | Added additional checks. Any customization to older files must be done again. |
rsed.envvars |
|
RSE environment variables | Older copies must be replaced by this one and the customizations done again. |
ISPF.conf |
|
TSO/ISPF Client Gateway configuration file | None |
CRASRV.properties |
|
CARMA configuration file | Added support for default values |
crastart.conf |
|
CARMA configuration file for CRASTART usage | None |
crastart.endevor.conf |
|
CARMA configuration file for CRASTART usage for CA Endevor® SCM RAM | None |
include.conf |
|
Forced includes for C/C++ content assist | None |
ssl.properties |
|
RSE SSL configuration file | None |
rsecomm.properties |
|
RSE trace configuration file | None |
pushtoclient.properties |
|
Push information to the client configuration file | None |
There are no migration notes, because there is no equivalent function in version 8.5.
Table 27 shows an overview of files that are customized in version 9.0. The Developer for System z Host Utilities sample libraries, AKG.SAKGSAMP and /usr/lpp/rdzutil/samples, contain more customizable members than listed here, such as sample code review post-processing script.
Member or File | Default location | Purpose | Migration notes |
---|---|---|---|
AKGSETUP |
|
JCL to create data sets, and populate them with customizable files | None |
AKGCC |
|
JCL for code coverage | None |
AKGCR |
|
JCL for code review | New DDs BIMPORT and BEXPORT |
AKGCRADD |
|
JCL to add third-party code to code review | None |
The following migration notes are specific to version 8.5. These notes are valid for migration from IBM Rational Developer for System z version 8.5.0 to version 8.5.1, and they are additions to the existing version 8.5.0 migration notes.
All of these listed changes are valid since version 8.5.1.
These notes are for a migration from a base version 8.0.1 to version 8.5. It includes changes that are already documented as part of version 8.0.1 maintenance. The changes that are part of the maintenance stream, and thus possibly already implemented, are marked with the release where they were introduced.
Table 28 shows an overview of files that are customized in version 8.5. The Developer for System z sample libraries, FEK.SFEKSAMP, FEK.SFEKSAMV and /usr/lpp/rdz/samples/, contain more customizable members than listed here, such as sample CARMA source code and jobs to compile them.
Member/File | Default location | Purpose | Migration notes |
---|---|---|---|
FEKSETUP | FEK.SFEKSAMP [FEK.#CUST.JCL] |
JCL to create data sets and directories, and populate them with customizable files | Updated to include new customizable members, create new directory structure, and remove actions for files that are no longer used |
JMON | FEK.SFEKSAMP(FEJJJCL) [FEK.#CUST.PROCLIB] |
JCL for JES Job Monitor | None |
FEJJJCL | FEK.SFEKSAMP [FEK.#CUST.PROCLIB(JMON)] |
Name for JMON member | See JMON member |
RSED | FEK.SFEKSAMP(FEKRSED) [FEK.#CUST.PROCLIB] |
JCL for RSE daemon | Changed TMPDIR support |
FEKRSED | FEK.SFEKSAMP [FEK.#CUST.PROCLIB(RSED)] |
Name for RSED member | See RSED member |
LOCKD | FEK.SFEKSAMP(FEKLOCKD) [FEK.#CUST.PROCLIB] |
JCL for lock daemon | Changed TMPDIR support |
FEKLOCKD | FEK.SFEKSAMP [FEK.#CUST.PROCLIB(LOCKD)] |
Name for LOCKD member | See LOCKD member |
ELAXF* | FEK.SFEKSAMP [FEK.#CUST.PROCLIB] |
JCL for remote project builds, and so on | Member ELAXFUOP has changed |
FEKRACF | FEK.SFEKSAMP [FEK.#CUST.JCL] |
JCL for security definitions | None |
FEJJCNFG | FEK.SFEKSAMP [FEK.#CUST.PARMLIB] |
JES Job Monitor configuration file | New optional directives have been added |
FEJTSO | FEK.SFEKSAMP [FEK.#CUST.CNTL] |
JCL for TSO submits | None |
CRA$VMSG | FEK.SFEKSAMP [FEK.#CUST.JCL] |
JCL to create the CARMA message VSAM | VSAM input has changed |
CRA$VDEF | FEK.SFEKSAMP [FEK.#CUST.JCL] |
JCL to create the CARMA configuration VSAM | None |
CRA$VSTR | FEK.SFEKSAMP [FEK.#CUST.JCL] |
JCL to create the CARMA custom information VSAM | None |
CRA$VCAD | FEK.SFEKSAMP [FEK.#CUST.JCL] |
JCL to create the CARMA configuration VSAM for CA Endevor® SCM RAM | VSAM input has changed |
CRA$VCAS | FEK.SFEKSAMP [FEK.#CUST.JCL] |
JCL to create the CARMA custom information VSAM for CA Endevor® SCM RAM | VSAM input has changed |
CRASUBMT | FEK.SFEKSAMP [FEK.#CUST.CNTL] |
CARMA batch startup CLIST | None |
CRASUBCA | FEK.SFEKSAMP [FEK.#CUST.CNTL] |
CARMA batch startup CLIST for CA Endevor® SCM RAM | Additional DD statements added |
CRABCFG | FEK.SFEKSAMP [FEK.#CUST.PARMLIB] |
CARMA batch actions configuration for CA Endevor® SCM RAM | NEW, customization is optional |
CRABATCA | FEK.SFEKSAMP [FEK.#CUST.CNTL] |
CARMA batch action JCL for CA Endevor® SCM RAM | NEW, customization is optional |
CRASHOW | FEK.SFEKSAMP [FEK.#CUST.PARMLIB] |
CARMA configuration for CA Endevor® SCM RAM | New filters are added |
CRATMAP | FEK.SFEKSAMP [FEK.#CUST.PARMLIB] |
CARMA configuration for CA Endevor® SCM RAM | None |
CRANDVRA | FEK.SFEKPROC | CARMA allocation REXX for CA Endevor® SCM RAM | Additional DD statements added |
CRA#VSLM | FEK.SFEKSAMP [FEK.#CUST.JCL] |
JCL to create the SCLM RAM's message VSAM | None |
CRA#ASLM | FEK.SFEKSAMP [FEK.#CUST.JCL] |
JCL to create the SCLM RAM's data sets | None |
CRA#VPDS | FEK.SFEKSAMP [FEK.#CUST.JCL] |
JCL to create the PDS RAM's message VSAM | None |
CRA#UADD | FEK.SFEKSAMP [FEK.#CUST.JCL] |
JCL to merge RAM definitions | None |
CRA#UQRY | FEK.SFEKSAMP [FEK.#CUST.JCL] |
JCL to extract RAM definitions | None |
CRAXJCL | FEK.SFEKSAMP [FEK.#CUST.ASM] |
Sample source code for IRXJCL replacement | None |
CRA#CIRX | FEK.SFEKSAMP [FEK.#CUST.JCL] |
JCL to compile CRAXJCL | None |
ADNCSDRS | FEK.SFEKSAMP [FEK.#CUST.JCL] |
JCL to define the RESTful CRD server to primary CICS region | None |
ADNCSDTX | FEK.SFEKSAMP [FEK.#CUST.JCL] |
JCL to define alternate transaction IDs to CICS region | None |
ADNTXNC | FEK.SFEKSAMP [FEK.#CUST.JCL] |
JCL to create alternate transaction IDs | None |
ADNMSGHC | FEK.SFEKSAMP [FEK.#CUST.JCL] |
JCL to compile ADNMSGHS | None |
ADNMSGHS | FEK.SFEKSAMP [FEK.#CUST.COBOL] |
Sample source code for the Pipeline Message Handler | None |
ADNVCRD | FEK.SFEKSAMP [FEK.#CUST.JCL] |
JCL to create the CRD repository | None |
ADNCSDWS | FEK.SFEKSAMP [FEK.#CUST.JCL] |
JCL to define the Web Service CRD server to primary CICS region | None |
ADNCSDAR | FEK.SFEKSAMP [FEK.#CUST.JCL] |
JCL to define the CRD server to non-primary CICS regions | None |
ADNJSPAU | FEK.SFEKSAMP [FEK.#CUST.JCL] |
JCL to update the CRD defaults | None |
ADNVMFST | FEK.SFEKSAMP [FEK.#CUST.JCL] |
JCL to create and define the Manifest repository | None |
ELAXMSAM | FEK.SFEKSAMP [FEK.#CUST.PROCLIB] |
JCL procedure of the WLM address space | None |
ELAXMJCL | FEK.SFEKSAMP [FEK.#CUST.JCL] |
JCL to define the PL/I and COBOL Stored Procedure Builder to DB2 | None |
AZUZUNIT | FEK.SFEKSAMP [FEK.#CUST.PROCLIB] |
JCL procedure for zUnit | NEW, customization is optional |
FEKRNPLI | FEK.SFEKSAMP [FEK.#CUST.CNTL] |
Rexx to call the PL/I compiler from within the preprocessor framework | NEW, customization is optional |
FEKLOGS | FEK.SFEKSAMP [FEK.#CUST.JCL] |
JCL to collect log files | Added additional checks. Any customization to older files must be done again. |
rsed.envvars | /usr/lpp/rdz/samples/ [/etc/rdz/] |
RSE environment variables | Older copies must be replaced by this one and the customizations done again. |
ISPF.conf | /usr/lpp/rdz/samples/ [/etc/rdz/] |
TSO/ISPF Client Gateway configuration file | None |
CRASRV.properties | /usr/lpp/rdz/samples/ [/etc/rdz/] |
CARMA configuration file | Added support for ephemeral ports |
crastart.conf | /usr/lpp/rdz/samples/ [/etc/rdz/] |
CARMA configuration file for CRASTART usage | None |
crastart.endevor.conf | /usr/lpp/rdz/samples/ [/etc/rdz/] |
CARMA configuration file for CRASTART usage for CA Endevor® SCM RAM | Additional DD statements added |
include.conf | /usr/lpp/rdz/samples/ [/etc/rdz/] |
Forced includes for C/C++ content assist | NEW, customization is optional |
ssl.properties | /usr/lpp/rdz/samples/ [/etc/rdz/] |
RSE SSL configuration file | None |
rsecomm.properties | /usr/lpp/rdz/samples/ [/etc/rdz/] |
RSE trace configuration file | Some directives became optional |
pushtoclient.properties | /usr/lpp/rdz/samples/ [/etc/rdz/] |
Push information to the client configuration file | Additional directives added and existing directives enhanced |
This chapter provides an overview of the available operator (or console) commands for Developer for System z. If you are unfamiliar with the syntax diagrams used to explain the command format, see How to read a syntax diagram.
Use the START command to dynamically start a started task (STC). The abbreviated version of the command is the letter S.
The MODIFY command can be used to dynamically query and change the characteristics of an active task. The abbreviated version of the command is the letter F.
AQECM104I
User:IBMUSER RegisterSocket(2)
User:IBMUSR2 18354752 ProbeSocket(3) waits for register connection
User:IBMUSR3 25387329 ProbeSocket(5) waits for engine connection
User:IBMUSR4 24113603 Engine(4) connected to Probe(8)
Module(AQETST)
AQECM103I There is no active user
The first message (for IBMUSER) indicates that the user is registered, but there is no debug activity. The second message (for IBMUSR2) indicates that a debug session is waiting for the user to register. The third message (for IBMUSR3) indicates that a debug session is being set up. The fourth message (for IBMUSR4) shows an active debug session for module AQETST.
AQECM110I user(IBMUSER) canceled
AQECM111I user(IBMUSER) not connected
E or ERROR | Error messages only (default) |
I or INFO | Error and Informational messages |
D or DUMP | Error, Informational, and Debug/dump messages |
Detailed tracing will cause performance degradations and should only be done under the direction of the IBM support center.
>>>STORAGE TRACE (console request)<<<
LDAREGRQ 00000000000 00000000K 00000M requested region size
below 16M line
LDASIZA 00006266880 00006120K 00005M maximum region size
LDALIMIT 00006266880 00006120K 00005M limit
LDAVVRG 00006266880 00006120K 00005M getmain limit
LDALOAL 00000061440 00000060K 00000M in use
LDAHIAL 00000266240 00000260K 00000M LSQA/SWA/private subpools
_GAP 00000000000 00000000K 00000M gaps in allocation
_AVAIL 00005939200 00005800K 00005M available (including gaps)
_MAX 00006000640 00005860K 00005M current limit
above 16M line
LDAESIZA 01905262592 01860608K 01817M maximum region size
LDAELIM 01905262592 01860608K 01817M limit
LDAEVVRG 01905262592 01860608K 01817M getmain limit
LDAELOAL 00000937984 00000916K 00000M in use
LDAEHIAL 00012754944 00012456K 00012M ELSQA/ESWA/private subpools
_EGAP 00000000000 00000000K 00000M gaps in allocation
_EAVAIL 01891569664 01847236K 01803M available (including gaps)
_EMAX 01892507648 01848152K 01804M current limit
S0 userid USER 4:04(elapsed) 4:04(idle)
Users: 1
N or NONE | Startup messages only |
E or ERROR | Startup and Error messages only (default) |
I or INFO | Startup, Error, and Informational messages |
V or VERBOSE | Startup, Error, Informational, and Verbose messages |
Detailed tracing will cause performance degradations and should only be done under the direction of the IBM support center.
N or NONE | No messages. |
E or ERROR | Error messages only |
W or WARNING | Error and Warning messages |
I or INFO | Error, Warning, and Informational messages (default) |
V or VERBOSE | Error Warning, Informational, and Verbose messages |
Detailed tracing will cause performance degradations and should only be done under the direction of the IBM support center.
ProcessId(<processid>) ASId(<asid>) JobName(<jobname>)
Clients(<local>/<total>) Order(<startup order>)
<clientid><userid><connected since>
LOGON TIME------------------ ID----- USERID--
<connected since> <clientid> <userid>
ID----- USERID-- LOGON TIME------------------
<clientid> <userid> <connected since>
USERID-- ID----- LOGON TIME------------------
<userid> <clientid> <connected since>
FEK217I <dataset[(member)]> is locked by <userid>
FEK218I <dataset[(member)]> is not locked
FEK219E Failed to determine lock owner for <dataset[(member)]>
ProcessId(<processid>) Memory Usage(<java heap usage>%)
Clients(<number of clients>) Order(<startup order>) <error status>
Status | Description |
---|---|
*severe error* | The thread pool process encountered an unrecoverable error and halted operations. The other status fields show the last known values. To remove this entry from the table, use the CLEANUP option of the DISPLAY PROCESS modify command. |
*killed process* | The thread pool process was killed by Java, z/OS UNIX or an operator command. The other status fields show the last known values. To remove this entry from the table, use the CLEANUP option of the DISPLAY PROCESS modify command. |
*timeout* | The thread pool process did not respond in a timely manner to RSE daemon during a client connect request. The other status fields show the current values. The thread pool is excluded for future client connect requests. The *timeout* status is reset when a client served by this thread pool logs off. |
*rejectLogon* | The thread pool temporarily will not accept logon requests due to a heavy workload. Note that the logon request will be honored by another thread pool. Once the resource intensive task - for example, uploading a large file to a client - has completed, the *rejectLogon* status is reset. |
More information is provided when the DETAIL option of the DISPLAY PROCESS modify command is used:
ProcessId(33555087) ASId(002E) JobName(RSED8) Order(1)
PROCESS LIMITS: CURRENT HIGHWATER LIMIT
JAVA HEAP USAGE(%) 10 56 100
CLIENTS 0 25 30
MAXFILEPROC 83 103 64000
MAXPROCUSER 97 99 200
MAXTHREADS 9 14 1500
MAXTHREADTASKS 9 14 1500
The ASId field is the address space ID, in hexadecimal notation. The process limits table shows the current resource usage, the high-water mark for the resource usage, and the resource limit. Due to other limiting factors, the defined limit might never be reached.
ProcessId(421 ) ASId(007D) JobName(RSED8) Order(1)
USERID THREAD-ID TCB@ ACC_TIME TAG
STCRSE 0EDE540000000000 005E6B60 822 1/ThreadPoolProcess
STCRSE 0EDE870000000001 005E69C8 001
STCRSE 0EDE980000000002 005E6518 1814
STCRSE 0EDEBA0000000003 005E66B0 2305
STCRSE 0EDECB0000000004 005E62F8 001
STCRSE 0EDEDC0000000005 005E60D8 001
STCRSE 0EDF860000000006 005C2BF8 628 6/ThreadPoolMonitor$Memory
UsageMonitor
STCRSE 0EDF970000000007 005C2D90 003 7/ThreadPoolMonitor
STCRSE 0EDFDB0000000008 005C29D8 001
STCRSE 0EE22E000000000E 005C1BE0 070
IBMUSER 0EE0EB0000000011 005C22B8 276 20/ServerReceiver
IBMUSER 0EE2500000000012 005C19C0 137 16/ServerUpdateHandler
IBMUSER 0EE2610000000013 005C17A0 509 15/ServerCommandHandler
IBMUSER 0EE1840000000014 005C1E00 065 21/ZosSystemMiner
STCRSE 0EE1510000000016 005C2098 078
STCRSE 0EE1950000000017 005C1580 001
IBMUSER 0EE23F0000000018 005C1360 021 26/UniversalFileSystemMine
r
IBMUSER 0EE2A5000000001C 005C0CF0 003 27/EnvironmentMiner
IBMUSER 0EE283000000001D 005C1140 002 31/CommandMiner
IBMUSER 0EE272000000001E 005C0E88 081 32/MVSFileSystemMiner
IBMUSER 0EE294000000001F 005C0AD0 002 33/MVSByteStreamHandler$Op
enCloseThread
STCRSE 0EE2E90000000023 005C0470 001
IBMUSER 0EE2C70000000024 005C08B0 050 38/JESMiner
IBMUSER 0EE2B60000000026 005C0690 004 40/FAMiner
IBMUSER 0EE30B0000000027 005C0250 002 41/LuceneMiner
IBMUSER 0EE31C0000000028 005C0030 002 42/CDTParserMiner
IBMUSER 0EE32D0000000029 005BDE00 002 43/MVSLuceneMiner
IBMUSER 0EE33E000000002A 005BDBE0 002 44/CDTMVSParserMiner
ProcessId(421 ) ASId(007D) JobName(RSED8) Order(1) CONTINUATION
USERID THREAD-ID TCB@ ACC_TIME TAG
The output is limited to the first 4000 threads for each thread pool.
When a client connection is cancelled, the host system threads go through normal termination processing to clean up resources used by them. This action implies that some threads can take a few minutes before they end; for example, because they are waiting on the keep-alive mechanism to time out.
When a client connection is cancelled, the host system threads go through normal termination processing to clean up resources used by them. This action implies that some threads can take a few minutes before they end; for example, because they are waiting on the keep-alive mechanism to time out.
FEK220I Host logs are written onto /tmp/feklogs.CDFMVS08.RSED.log
By default, only the server logs are collected. Command options allow you to collect different logs:USER | Collect log files for the specified user ID’s |
AUDIT | Collect audit logs |
NOSERVER | Do not collect server logs |
Developer for System z will query your security product for access permits to FEK.CMD.LOGS.** profiles to determine if the requestor is allowed to collect the specified logs. By default, the requestor is the RSED started task user ID, unless the OWNER option is specified. Only the requestor has access to the file holding the collected data.
E or 0 or OFF | Error messages only. |
W or 1 | Error and warning messages. This is the default setting in rsecomm.properties. |
I or 2 or ON | Error, warning, and informational messages. |
Detailed tracing will cause performance degradations and should only be done under the direction of the IBM support center.
E or 0 or OFF | Error messages only. |
W or 1 | Error and warning messages. This is the default setting in rsecomm.properties. |
I or 2 or ON | Error, warning, and informational messages. |
Detailed tracing will cause performance degradations and should only be done under the direction of the IBM support center.
E or 0 or OFF | Error messages only. |
W or 1 | Error and warning messages. This is the default setting in rsecomm.properties. |
I or 2 or ON | Error, warning, and informational messages. |
Detailed tracing will cause performance degradations and should only be done under the direction of the IBM support center.
Detailed tracing will cause performance degradations and should only be done under the direction of the IBM support center.
OFF | Error messages only |
ON (default) | Error, warning, and informational messages. |
FFS | Set the specified log level only for MVS data set services (lock.log and ffs*.log) |
RSECOMM | Set the specified log level only for RSE server (rsecomm.log) |
The command can be issued for users that are currently not logged on. The setting remains active when a user logs off and will be used again when the user logs on.
Use the USER directive in rsecomm.properties to simulate issuing the MODIFY TRACE USER command at server startup. Existing settings from previous MODIFY TRACE USER or MODIFY TRACE SERVER operator commands or the USER directive in rsecomm.properties will be replaced by the setting of this command.
Detailed tracing will cause performance degradations and should only be done under the direction of the IBM support center.
OFF | Error messages only. |
ON (default) | Error, warning, and informational messages. |
The command alters the trace detail level for RSE server (rsecomm.log) and the MVS data set services (lock.log and ffs*.log). The command can be issued for users that are currently not logged on. The setting remains active when a user logs off and will be used again when the user logs on. Use the USER directive in rsecomm.properties to simulate issuing the MODIFY TRACE USER command at server startup. Existing settings from previous MODIFY TRACE USER or MODIFY TRACE SERVER operator commands or the USER directive in rsecomm.properties will be replaced by the setting of this command.
Detailed tracing will cause performance degradations and should only be done under the direction of the IBM support center.
OFF | Error messages only. |
ON (default) | Error, warning, and informational messages. |
The command alters the trace detail level for RSE server (rsecomm.log) and the MVS data set services (lock.log and ffs*.log). Existing settings from previous MODIFY TRACE USER or MODIFY TRACE SERVER operator commands or the USER directive in rsecomm.properties will be replaced by the setting of this command.
Detailed tracing will cause performance degradations and should only be done under the direction of the IBM support center.
JVMDUMP034I User requested Heap dump using '/tmp/heapdump.20120223.211'
430.16777590.0001.phd' through JVMRI
JVMDUMP034I User requested Java dump using '/tmp/javacore.20120223.214
244.16777590.0002.phd' through JVMRI
+FEK900I DAEMON IVP: SSL is disabled
+FEK900I DAEMON IVP: connected
+FEK900I DAEMON IVP: 1977
+FEK900I DAEMON IVP: 6902918
+FEK900I DAEMON IVP: Success
+FEK901I DAEMON IVP Exit code = 0
+FEK900I ISPF IVP: executed on CDFMVS08 -- Tue Sep 13 22:29:28 EDT 2011
+FEK900I ISPF IVP: executed by uid=1(IBMUSER) gid=0(SYS1)
+FEK900I ISPF IVP: using /etc/rdz/rsed.envvars
+FEK900I ISPF IVP: current address space size limit is 2147483647
(2048.0 MB)
+FEK900I ISPF IVP: maximum address space size limit is 2147483647
(2048.0 MB)
+FEK900I ISPF IVP: -----------------------------------------------------
--------
+FEK900I ISPF IVP: /etc/rdz/ISPF.conf content:
+FEK900I ISPF IVP: -----------------------------------------------------
--------
+FEK900I ISPF IVP: ispllib=ISP.SISPLOAD
+FEK900I ISPF IVP: ispmlib=ISP.SISPMENU
+FEK900I ISPF IVP: isptlib=ISP.SISPTENU
+FEK900I ISPF IVP: ispplib=ISP.SISPPENU
+FEK900I ISPF IVP: ispslib=ISP.SISPSLIB
+FEK900I ISPF IVP: sysproc=ISP.SISPCLIB,FEK.SFEKPROC
+FEK900I ISPF IVP: -----------------------------------------------------
--------
+FEK900I ISPF IVP: Host install verification for RSE
+FEK900I ISPF IVP: Review IVP log messages from HOST below :
+FEK900I ISPF IVP: -----------------------------------------------------
--------
+FEK900I ISPF IVP: Service level 22Feb2011
+FEK900I ISPF IVP: RSE connection and base TSO/ISPF session initializati
on check only
+FEK900I ISPF IVP: *** CHECK : ENVIRONMENT VARIABLES - key variables
displayed below :
+FEK900I ISPF IVP: Server PATH = .:/usr/lpp/java/J6.0/bin:/usr/l
pp/rdz/bin:/usr/lpp/ispf/bin:/bin:/usr/sbin
+FEK900I ISPF IVP: STEPLIB = NONE
+FEK900I ISPF IVP: Temporary directory = /tmp
+FEK900I ISPF IVP: CGI_ISPHOME = /usr/lpp/ispf
+FEK900I ISPF IVP: CGI_ISPCONF = /etc/rdz
+FEK900I ISPF IVP: CGI_ISPWORK = /var/rdz
+FEK900I ISPF IVP: -----------------------------------------------------
--------
+FEK900I ISPF IVP: *** CHECK : USS MODULES
+FEK900I ISPF IVP: Checking ISPF Directory : /usr/lpp/ispf
+FEK900I ISPF IVP: Checking modules in /usr/lpp/ispf/bin directory
+FEK900I ISPF IVP: Checking for ISPF configuration file ISPF.conf
+FEK900I ISPF IVP: RC=0
+FEK900I ISPF IVP: MSG: SUCCESSFUL
+FEK900I ISPF IVP: -----------------------------------------------------
--------
+FEK900I ISPF IVP: *** CHECK : TSO/ISPF INITIALIZATION
+FEK900I ISPF IVP: ( TSO/ISPF session will be initialized )
+FEK900I ISPF IVP: RC=0
+FEK900I ISPF IVP: MSG: SUCCESSFUL
+FEK900I ISPF IVP: -----------------------------------------------------
--------
+FEK900I ISPF IVP: *** CHECK: Shutting down TSO/ISPF IVP session
+FEK900I ISPF IVP: RC=0
+FEK900I ISPF IVP: MSG: SUCCESSFUL
+FEK900I ISPF IVP: -----------------------------------------------------
--------
+FEK900I ISPF IVP: Host installation verification completed successfully
+FEK900I ISPF IVP: -----------------------------------------------------
--------
+FEK901I ISPF IVP Exit code = 0
+FEK900I PASSTICKET IVP: the default applid=FEKAPPL
+FEK900I PASSTICKET IVP: Success, PassTicket IVP finished normally
+FEK901I PASSTICKET IVP Exit code = 0
Use the STOP command to stop an active task. The abbreviated version of the command is the letter P.
The syntax diagram shows you how to specify a command so that the operating system can correctly interpret what you type. Read the syntax diagram from left to right and from top to bottom, following the horizontal line, which is the main path.
The following symbols are used in syntax diagrams:
Symbol | Description |
---|---|
>> | Marks the beginning of the syntax diagram. |
> | Indicates that the syntax diagram is continued. |
| | Marks the beginning and end of a fragment or part of the syntax diagram. |
>< | Marks the end of the syntax diagram. |
The following types of operands are used in syntax diagrams:
>>──REQUIRED_OPERAND──><
>>─┬──────────────────┬─><
└─OPTIONAL_OPERAND─┘
┌─DEFAULT_OPERAND─┐
>>─┴─────────────────┴─><
Operands are classified as keywords or variables:
In the following example, the USER command is a keyword. The required variable parameter is user_id, and the optional variable parameter is password. Replace the variable parameters with your own values:
>>──USER──user_id─┬──────────┬──────────────────────────────────><
└─password─┘
If a diagram shows a character that is not alphanumeric, such as parentheses, periods, commas, equal signs, and blank spaces, you must code the character as part of the syntax. In this example, you must code OPERAND=(001 0.001):
>>──OPERAND──=──(──001── ──0.001──)────────────────────────><
An arrow returning to the left in a group of operands means that more than one can be selected, or that a single one can be repeated:
>>──┬──────────────────────┬────────────────────────────><
├─REPEATABLE_OPERAND_1─┤
├─REPEATABLE_OPERAND_2─┤
└─<────────────────────┘
If a diagram is longer than one line, the first line ends with a single arrowhead and the second line begins with a single arrowhead:
>>──| The first line of a syntax diagram that is longer than one line |──>
>──| The continuation of the subcommands, parameters, or both |─────────><
Some diagrams might contain syntax fragments, which serve to break up diagrams that are too long, too complex, or too repetitious. Syntax fragment names are in mixed case and are shown in the diagram and in the heading of the fragment. The fragment is placed below the main diagram:
>>──| Syntax fragment |───────────────────────────────────────><
Syntax fragment:
|──1ST_OPERAND──,──2ND_OPERAND──,──3RD_OPERAND──|
This section summarizes the information in IBM Rational Developer for System z Host Configuration Reference (SC14-7290). For more details, see that publication.
The Developer for System z host system consists of several components that interact to give the client access to the host system services and data. Understanding the design of these components can help you make the correct configuration decisions.
Developer for System z provides mainframe access to users on a non-mainframe workstation. Validating connection requests, providing secure communication between the host system and the workstation, and authorizing and auditing activity are therefore important aspects of the product configuration.
Developer for System z uses TCP/IP to provide mainframe access to users on a non-mainframe workstation. It also uses TCP/IP for communication between various components and other products.
Unlike traditional z/OS applications, Developer for System z is not a monolithic application that can be identified easily to Workload Manager (WLM). Developer for System z consists of several components that interact to give the client access to the host system services and data. Some of these services are active in different address spaces, resulting in different WLM classifications.
RSE (Remote Systems Explorer) is the core of Developer for System z. To manage the connections and workloads from the clients, RSE is composed of a daemon address space, which controls thread pooling address spaces. The daemon acts as a focal point for connection and management purposes, while the thread pools process the client workloads.
This configuration makes RSE a prime target for tuning the Developer for System z setup. However, maintaining hundreds of users, each using 17 or more threads, a certain amount of storage, and possibly one or more address spaces requires proper configuration of both Developer for System z and z/OS.
z/OS is a highly customizable operating system, and (sometimes small) system changes can have a huge impact on the overall performance. This chapter highlights some of the changes that can be made to improve the performance of Developer for System z.
This chapter contains information useful for a CICS Transaction Server administrator.
This chapter assists you with enhancing Developer for System z by writing exit routines.
This chapter assists you with mimicking a TSO logon procedure by adding DD statements and data sets to the TSO environment in Developer for System z.
There are times when you want multiple instances of Developer for System z to be active on the same system, for example, when testing an upgrade. However, some resources such as TCP/IP ports cannot be shared, so the defaults are not always applicable. Use the information in this chapter to plan the coexistence of the different instances of Developer for System z, after which you can use this configuration guide to customize them.
This section is provided to assist you with some common problems that you might encounter when setting up Secure Socket Layer (SSL), or during checking or modifying an existing setup. This section also provides a sample setup to support users authenticating themselves with an X.509 certificate.
This section is provided to assist you with some common problems that you may encounter when setting up Application Transparent Transport Layer Security (AT-TLS), or during checking or modifying an existing setup.
This section is provided to assist you with some common problems that you might encounter when setting up TCP/IP, or during checking or modifying an existing setup.
The following publications are referenced in this document:
Publication title | Order number | Reference | Reference Web site |
---|---|---|---|
Program Directory for IBM Rational Developer for System z | GI11-8298 | Developer for System z | http://www-01.ibm.com/support/docview.wss?uid=swg27038517 |
Program Directory for IBM Rational Developer for System z Host Utilities | GI13-2864 | Developer for System z | http://www-01.ibm.com/support/docview.wss?uid=swg27038517 |
IBM Rational Developer for System z Prerequisites | SC23-7659 | Developer for System z | http://www-01.ibm.com/support/docview.wss?uid=swg27038517 |
IBM Rational Developer for System z Host Configuration Quick Start | GI11-9201 | Developer for System z | http://www-01.ibm.com/support/docview.wss?uid=swg27038517 |
IBM Rational Developer for System z Host Configuration Guide | SC23-7658 | Developer for System z | http://www-01.ibm.com/support/docview.wss?uid=swg27038517 |
IBM Rational Developer for System z Host Configuration Reference | SC14-7290 | Developer for System z | http://www-01.ibm.com/support/docview.wss?uid=swg27038517 |
IBM Rational Developer for System z Host Configuration Utility Guide | SC14-7282 | Developer for System z | http://www-01.ibm.com/support/docview.wss?uid=swg27038517 |
IBM Rational Developer for System z Messages and Codes | SC14-7497 | Developer for System z | http://www-01.ibm.com/support/docview.wss?uid=swg27038517 |
IBM Rational Developer for System z Answers to common host configuration and maintenance issues | SC14-7373 | Developer for System z | http://www-01.ibm.com/support/docview.wss?uid=swg27038517 |
IBM Rational Developer for System z Common Access Repository Manager Developer's Guide | SC23-7660 | Developer for System z | http://www-01.ibm.com/support/docview.wss?uid=swg27038517 |
IBM Rational Developer for System z Prerequisites | SC23-7659 | Developer for System z | http://www.ibm.com/software/rational/products/developer/systemz/library/index.html |
IBM Rational Developer for System z Host Configuration Quick Start | GI11-9201 | Developer for System z | http://www.ibm.com/software/rational/products/developer/systemz/library/index.html |
SCLM Developer Toolkit Administrator's Guide | SC23-9801 | Developer for System z | http://www-01.ibm.com/support/docview.wss?uid=swg27038517 |
Using APPC to provide TSO command services | SC14-7291 | White paper | http://www-01.ibm.com/support/docview.wss?uid=swg27038517 |
Using ISPF Client Gateway to provide CARMA services | SC14-7292 | White paper | http://www-01.ibm.com/support/docview.wss?uid=swg27038517 |
Communications Server IP Configuration Guide | SC31-8775 | z/OS 1.13 | http://www-03.ibm.com/servers/eserver/zseries/zos/bkserv/ |
Communications Server IP Configuration Reference | SC31-8776 | z/OS 1.13 | http://www-03.ibm.com/servers/eserver/zseries/zos/bkserv/ |
Communications Server IP Diagnosis Guide | GC31-8782 | z/OS 1.13 | http://www-03.ibm.com/servers/eserver/zseries/zos/bkserv/ |
Communications Server IP System Administrator's Commands | SC31-8781 | z/OS 1.13 | http://www-03.ibm.com/servers/eserver/zseries/zos/bkserv/ |
Communications Server SNA Network Implementation Guide | SC31-8777 | z/OS 1.13 | http://www-03.ibm.com/servers/eserver/zseries/zos/bkserv/ |
Communications Server SNA Operations | SC31-8779 | z/OS 1.13 | http://www-03.ibm.com/servers/eserver/zseries/zos/bkserv/ |
Cryptographic Services System SSL Programming | SC24-5901 | z/OS 1.13 | http://www-03.ibm.com/servers/eserver/zseries/zos/bkserv/ |
DFSMS Macro Instructions for Data Sets | SC26-7408 | z/OS 1.13 | http://www-03.ibm.com/servers/eserver/zseries/zos/bkserv/ |
DFSMS Using data sets | SC26-7410 | z/OS 1.13 | http://www-03.ibm.com/servers/eserver/zseries/zos/bkserv/ |
Language Environment Customization | SA22-7564 | z/OS 1.13 | http://www-03.ibm.com/servers/eserver/zseries/zos/bkserv/ |
Language Environment Debugging Guide | GA22-7560 | z/OS 1.13 | http://www-03.ibm.com/servers/eserver/zseries/zos/bkserv/ |
MVS Diagnosis: Tools and Service Aids | GA22-7589 | z/OS 1.13 | http://www-03.ibm.com/servers/eserver/zseries/zos/bkserv/ |
MVS Initialization and Tuning Guide | SA22-7591 | z/OS 1.13 | http://www-03.ibm.com/servers/eserver/zseries/zos/bkserv/ |
MVS Initialization and Tuning Reference | SA22-7592 | z/OS 1.13 | http://www-03.ibm.com/servers/eserver/zseries/zos/bkserv/ |
MVS JCL Reference | SA22-7597 | z/OS 1.13 | http://www-03.ibm.com/servers/eserver/zseries/zos/bkserv/ |
MVS Planning APPC/MVS Management | SA22-7599 | z/OS 1.13 | http://www-03.ibm.com/servers/eserver/zseries/zos/bkserv/ |
MVS Planning Workload Management | SA22-7602 | z/OS 1.13 | http://www-03.ibm.com/servers/eserver/zseries/zos/bkserv/ |
MVS System Commands | SA22-7627 | z/OS 1.13 | http://www-03.ibm.com/servers/eserver/zseries/zos/bkserv/ |
Security Server RACF Command Language Reference | SA22-7687 | z/OS 1.13 | http://www-03.ibm.com/servers/eserver/zseries/zos/bkserv/ |
Security Server RACF Security Administrator's Guide | SA22-7683 | z/OS 1.13 | http://www-03.ibm.com/servers/eserver/zseries/zos/bkserv/ |
TSO/E Customization | SA22-7783 | z/OS 1.13 | http://www-03.ibm.com/servers/eserver/zseries/zos/bkserv/ |
TSO/E REXX Reference | SA22-7790 | z/OS 1.13 | http://www-03.ibm.com/servers/eserver/zseries/zos/bkserv/ |
UNIX System Services Command Reference | SA22-7802 | z/OS 1.13 | http://www-03.ibm.com/servers/eserver/zseries/zos/bkserv/ |
UNIX System Services Planning | GA22-7800 | z/OS 1.13 | http://www-03.ibm.com/servers/eserver/zseries/zos/bkserv/ |
UNIX System Services User's Guide | SA22-7801 | z/OS 1.13 | http://www-03.ibm.com/servers/eserver/zseries/zos/bkserv/ |
Using REXX and z/OS UNIX System Services | SA22-7806 | z/OS 1.13 | http://www-03.ibm.com/servers/eserver/zseries/zos/bkserv/ |
Java™ Diagnostic Guide | SC34-6650 | Java 6.0 | http://www.ibm.com/developerworks/java/jdk/diagnosis/ |
Java SDK and Runtime Environment User Guide | / | Java 6.0 | http://www-03.ibm.com/servers/eserver/zseries/software/java/ |
Resource Definition Guide | SC34-6430 | CICSTS 3.1 | http://www-03.ibm.com/systems/z/os/zos/bkserv/zapplsbooks.html |
Resource Definition Guide | SC34-6815 | CICSTS 3.2 | http://www-03.ibm.com/systems/z/os/zos/bkserv/zapplsbooks.html |
Resource Definition Guide | SC34-7000 | CICSTS 4.1 | https://publib.boulder.ibm.com/infocenter/cicsts/v4r1/index.jsp?topic=/com.ibm.cics.ts.home.doc/library/library_html.html |
Resource Definition Guide | SC34-7181 | CICSTS 4.2 | https://publib.boulder.ibm.com/infocenter/cicsts/ v4r2/index.jsp?topic=/com.ibm.cics.ts.home.doc/ library/library_html.html |
RACF Security Guide | SC34-6454 | CICSTS 3.1 | http://www-03.ibm.com/systems/z/os/zos/bkserv/zapplsbooks.html |
RACF Security Guide | SC34-6835 | CICSTS 3.2 | http://www-03.ibm.com/systems/z/os/zos/bkserv/zapplsbooks.html |
RACF Security Guide | SC34-7003 | CICSTS 4.1 | https://publib.boulder.ibm.com/infocenter/cicsts/v4r1/index.jsp?topic=/com.ibm.cics.ts.home.doc/library/library_html.html |
RACF Security Guide | SC34-7179 | CICSTS 4.2 | https://publib.boulder.ibm.com/infocenter/cicsts/v4r2/index.jsp?topic=/com.ibm.cics.ts.home.doc/library/library_html.html |
Language Reference | SC27-1408 | Enterprise COBOL for z/OS | http://www-03.ibm.com/systems/z/os/zos/bkserv/zapplsbooks.html |
Description | Reference Web site |
---|---|
Developer for System z IBM Knowledge Center | http://www-01.ibm.com/support/knowledgecenter/SSQ2R2_9.1.0/com.ibm.etools.getstart.wsentdev.doc/kc_version_welcome_rdz.html |
Developer for System z Library | http://www-01.ibm.com/support/docview.wss?uid=swg27038517 |
Developer for System z home page | http://www-03.ibm.com/software/products/en/developerforsystemz/ |
Developer for System z Recommended service | http://www-01.ibm.com/support/docview.wss?rs=2294&context=SS2QJ2&uid=swg27006335 |
Developer for System z enhancement request | https://www.ibm.com/developerworks/support/rational/rfe/ |
z/OS internet library | http://www-03.ibm.com/servers/eserver/zseries/zos/bkserv/ |
CICSTS IBM Knowledge Center | https://publib.boulder.ibm.com/infocenter/cicsts/v4r1/index.jsp |
IBM Tivoli® Directory Server | http://www-01.ibm.com/software/tivoli/products/directory-server/ |
Problem Determination Tools Plug-ins | http://www-01.ibm.com/software/awdtools/deployment/pdtplugins/ |
Java security information | http://www.ibm.com/developerworks/java/jdk/security/ |
Download Apache Ant | http://ant.apache.org/ |
Java keytool documentation | http://java.sun.com/j2se/1.5.0/docs/tooldocs/solaris/keytool.html |
CA support home page | https://support.ca.com/ |
Publication title | Order number | Reference | Reference website |
---|---|---|---|
ABCs of z/OS System Programming Volume 9 (z/OS UNIX) | SG24-6989 | Redbook | http://www.redbooks.ibm.com/ |
System Programmer’s Guide to: Workload Manager | SG24-6472 | Redbook | http://www.redbooks.ibm.com/ |
TCPIP Implementation Volume 1: Base Functions, Connectivity, and Routing | SG24-7532 | Redbook | http://www.redbooks.ibm.com/ |
TCPIP Implementation Volume 3: High Availability, Scalability, and Performance | SG24-7534 | Redbook | http://www.redbooks.ibm.com/ |
TCP/IP Implementation Volume 4: Security and Policy-Based Networking | SG24-7535 | Redbook | http://www.redbooks.ibm.com/ |
Tivoli Directory Server for z/OS | SG24-7849 | Redbook | http://www.redbooks.ibm.com/ |
© Copyright IBM Corporation 1992, 2013.
U.S. Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
This information was developed for products and services offered in the U.S.A.
IBM may not offer the products, services, or features discussed in this document in other countries. Consult your local IBM representative for information on the products and services currently available in your area. Any reference to an IBM product, program, or service is not intended to state or imply that only that IBM product, program, or service may be used. Any functionally equivalent product, program, or service that does not infringe any IBM intellectual property right may be used instead. However, it is the user's responsibility to evaluate and verify the operation of any non-IBM product, program, or service.
IBM may have patents or pending patent applications covering subject matter described in this document. The furnishing of this document does not grant you any license to these patents. You can send license inquiries, in writing, to:
IBM Director of Licensing
IBM Corporation
North Castle Drive
Armonk, NY 10504-1785
U.S.A.
For license inquiries regarding double-byte character set (DBCS) information, contact the IBM Intellectual Property Department in your country or send inquiries, in writing, to:
Intellectual Property Licensing
Legal and Intellectual Property Law
IBM Japan, Ltd.
19-21, Nihonbashi-Hakozakicho, Chuo-ku
Tokyo 103-8510, Japan
The following paragraph does not apply to the United Kingdom or any other country where such provisions are inconsistent with local law: INTERNATIONAL BUSINESS MACHINES CORPORATION PROVIDES THIS PUBLICATION "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Some states do not allow disclaimer of express or implied warranties in certain transactions, therefore, this statement may not apply to you.
This information could include technical inaccuracies or typographical errors. Changes are periodically made to the information herein; these changes will be incorporated in new editions of the publication. IBM may make improvements and/or changes in the product(s) and/or the program(s) described in this publication at any time without notice.
Any references in this information to non-IBM websites are provided for convenience only and do not in any manner serve as an endorsement of those websites. The materials at those websites are not part of the materials for this IBM product and use of those websites is at your own risk.
IBM may use or distribute any of the information you supply in any way it believes appropriate without incurring any obligation to you.
Licensees of this program who wish to have information about it for the purpose of enabling: (i) the exchange of information between independently created programs and other programs (including this one) and (ii) the mutual use of the information which has been exchanged, should contact:
Intellectual Property Dept. for Rational Software
IBM Corporation
Silicon Valley Lab
555 Bailey Avnue
San Jose, CA 95141-1003
U.S.A.
Such information may be available, subject to appropriate terms and conditions, including in some cases, payment of a fee.
The licensed program described in this document and all licensed material available for it are provided by IBM under terms of the IBM Customer Agreement, IBM International Program License Agreement or any equivalent agreement between us.
Any performance data contained herein was determined in a controlled environment. Therefore, the results obtained in other operating environments may vary significantly. Some measurements may have been made on development-level systems and there is no guarantee that these measurements will be the same on generally available systems. Furthermore, some measurements may have been estimated through extrapolation. Actual results may vary. Users of this document should verify the applicable data for their specific environment.
Information concerning non-IBM products was obtained from the suppliers of those products, their published announcements or other publicly available sources. IBM has not tested those products and cannot confirm the accuracy of performance, compatibility or any other claims related to non-IBM products. Questions on the capabilities of non-IBM products should be addressed to the suppliers of those products.
All statements regarding IBM's future direction or intent are subject to change or withdrawal without notice, and represent goals and objectives only.
This information contains examples of data and reports used in daily business operations. To illustrate them as completely as possible, the examples include the names of individuals, companies, brands, and products. All of these names are fictitious and any similarity to the names and addresses used by an actual business enterprise is entirely coincidental.
This information contains sample application programs in source language, which illustrate programming techniques on various operating platforms. You may copy, modify, and distribute these sample programs in any form without payment to IBM, for the purposes of developing, using, marketing or distributing application programs conforming to the application programming interface for the operating platform for which the sample programs are written. These examples have not been thoroughly tested under all conditions. IBM, therefore, cannot guarantee or imply reliability, serviceability, or function of these programs. The sample programs are provided "AS IS", without warranty of any kind. IBM shall not be liable for any damages arising out of your use of the sample programs.
Each copy or any portion of these sample programs or any derivative work, must include a copyright notice as follows:
© (your company name) (year). Portions of this code are derived from IBM Corp. Sample Programs. © Copyright IBM Corp. 1992, 2013.
If you are viewing this information in softcopy, the photographs and color illustrations may not appear.
IBM Software products, including software as a service solutions, (“Software Offerings”) may use cookies or other technologies to collect product usage information, to help improve the end user experience, to tailor interactions with the end user or for other purposes. In many cases no personally identifiable information is collected by the Software Offerings. Some of our Software Offerings can help enable you to collect personally identifiable information. If this Software Offering uses cookies to collect personally identifiable information, specific information about this offering’s use of cookies is set forth below.
This Software Offering does not use cookies or other technologies to collect personally identifiable information.
IBM, the IBM logo, and ibm.com are trademarks or registered trademarks of International Business Machines Corp., registered in many jurisdictions worldwide. Other product and service names might be trademarks of IBM or other companies. A current list of IBM trademarks is available on the web at "Copyright and trademark information" at www.ibm.com/legal/copytrade.shtml.
Applicability
These terms and conditions are in addition to any terms of use for the IBM website.
Personal use
You may reproduce these publications for your personal, noncommercial use provided that all proprietary notices are preserved. You may not distribute, display or make derivative work of these publications, or any portion thereof, without the express consent of IBM.
Commercial use
You may reproduce, distribute and display these publications solely within your enterprise provided that all proprietary notices are preserved. You may not make derivative works of these publications, or reproduce, distribute or display these publications or any portion thereof outside your enterprise, without the express consent of IBM.
Rights
Except as expressly granted in this permission, no other permissions, licenses or rights are granted, either express or implied, to the publications or any information, data, software or other intellectual property contained therein.
IBM reserves the right to withdraw the permissions granted herein whenever, in its discretion, the use of the publications is detrimental to its interest or, as determined by IBM, the above instructions are not being properly followed.
You may not download, export or re-export this information except in full compliance with all applicable laws and regulations, including all United States export laws and regulations.
IBM MAKES NO GUARANTEE ABOUT THE CONTENT OF THESE PUBLICATIONS. THE PUBLICATIONS ARE PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO IMPLIED WARRANTIES OF MERCHANTABILITY, NON-INFRINGEMENT, AND FITNESS FOR A PARTICULAR PURPOSE.
This information contains sample application programs in source language, which illustrate programming techniques on various operating platforms. You may copy, modify, and distribute these sample programs in any form without payment to IBM, for the purposes of developing, using, marketing or distributing application programs conforming to the application programming interface for the operating platform for which the sample programs are written. These examples have not been thoroughly tested under all conditions. IBM, therefore, cannot guarantee or imply reliability, serviceability, or function of these programs. The sample programs are provided "AS IS", without warranty of any kind. IBM shall not be liable for any damages arising out of your use of the sample programs.
IBM, the IBM logo, and ibm.com are trademarks or registered trademarks of International Business Machines Corp., registered in many jurisdictions worldwide. Other product and service names might be trademarks of IBM or other companies. A current list of IBM trademarks is available on the Web at www.ibm.com/legal/copytrade.shtml.
Adobe and PostScript are trademarks of Adobe Systems Incorporated.
Cell Broadband Engine - Sony Computer Entertainment Inc.
Rational is a trademark of International Business Machines Corporation and Rational Software Corporation, in the United States, other countries, or both.
Intel, Intel Centrino, Intel SpeedStep, Intel Xeon, Celeron, Itanium, and Pentium are trademarks of Intel Corporation in the United States, or other countries, or both.
IT Infrastructure Library is a trademark of Central Computer and Telecommunications Agency
ITIL is a trademark of The Minister for the Cabinet Office
Linear Tape-Open, LTO, and Ultrium are trademarks of HP, IBM Corp., and Quantum
Linux is a trademark of Linus Torvalds
Microsoft, Windows, and the Windows logo are trademarks or registered trademarks of Microsoft Corporation in the United States, or other countries, or both.
Java and all Java-based trademarks and logos are trademarks or registered trademarks of Sun Microsystems, Inc. in the United States and other countries.
UNIX is a registered trademark of The Open Group in the United States and other countries.