CICS Gateway for Java Test Suite - Readme


This readme describes each of the applets and applications available in the CICS Gateway for Java Test Suite.
Please send any comments to Alan Hollingshead (hollings@hursley.ibm.com).

To download, install and configure the IBM CICS Gateway for Java, go to: http://www.software.ibm.com/cics/internet/cicsgw4j/jgdown.html

The programs to test the CICS Gateway for Java are split into the following:

Problems? Help! What's happening?


ECI applets and applications

The following are currently available in the CA83 package:

ECI Test Test Description
ecij123 Three Simple ECI Calls
synj001 Extended ECI Synchronous Calls with Multiple LUWs (application only)
synj002 Extended ECI Synchronous Calls with Multiple LUWs
asmj002 Asynchronous Calls with Message Qualifiers
asyj002 Asynchronous Call Testing (without Callback or Message Qualifiers)
ascj001 Multiple Asynchronous ECI Calls with Callback Testing
ecijlst List Systems and Check Status
ecijtpn ECI_SYNC_TPN and ECI_ASYNC_TPN calls (requires JGate V2 beta)
synjtpn Extended ECI_SYNC_TPN Calls (requires JGate V2 beta)
synj0c3 Detect Maximum Commarea Length
synjms3 Synchronous Calls to Multiple Servers

CICS Server applications

The following server application is supplied with the package in either COBOL or C

CICS Server Program Description
srvtime Returns date and timestamp in first 18 characters of commarea


ecij123 : Three Simple ECI Calls

Can be run as an applet or an application.

ecij123 - Three simple calls to test the CICS Gateway for Java (1) eci_sync (2) eci_async (3) eci_get_reply_wait Written : Apr 97 - Alan Hollingshead This applet/application contains three very simple calls. Issuing "java ecij123 -?" shows the following help and defaults: ECIJ123 - Three Simple ECI Calls Usage: java ecij123 <parameters> -j JGate Default: (local hostname) -r JGate port Default: 2006 -s CICS server Default: -a application Default: SRVTIME -i # iterations Default: 1 -d delay Default: 0 seconds -u userid Default: SYSAD -p password Default: SYSAD -! debug Default: false -? This help panel Example: java ecij123 -s cicstcp The above example overrides the server setting of <null> with cicstcp. Extract of example output: # Call Commarea-Data Length CICS Rc Abend -- ------------------ ----------------- ------ ------- ----- 1 eci_sync 24/04/97 10:16:36 18 0 1 eci_async ----------------- 18 0 1 eci_get_reply_wait 24/04/97 10:16:36 18 0 Parameter overrides: -j ... hostname or IP address where Java Gateway is running. The default is your local hostname. -r ... Java Gateway port. This defaults to 2006 unless otherwise specified when starting the Java Gateway. -s ... if the CICS Client is being used to connect to a CICS server, null takes the first CICSCLI.INI setting. Otherwise specify a valid entry defined in the CICSCLI.INI file. If a CICS Client is not being used, a null value will use the local server ECI, if supported. -a ... name of server application. -i ... number of iterations (of each set of three calls). -d ... a delay in seconds between each iteration. -u ... userid, if required by the server mirror transaction. -p ... password, if required by the server mirror transaction. -! ... some debug info is supplied if "-!" is specified. -? ... displays the help panel and defaults. Prior to each ECI call the commarea is initialised to 18 dashes. The server returns the current date and timestamp. The default CICS server program is the supplied SRVTIME which is compatible on all CICS servers. If desired, a different server program can be supplied as an input parameter to this applet/application. This program contains no data conversion for the commarea. If run as an applet - parameters are passed via ecij123.html. If run as an application - parameters can be overridden via command line.

synj001 - Extended ECI Synchronous Calls with Multiple LUWs

Run synj001 as an application only - synj002 runs as an applet or application.

synj001 - ECI_EXTENDED synchronous calls with multiple LUWs Written : Nov 96 - Alan Hollingshead Note: synj001 runs only as a Java application (hence is short and simple). synj002 functions exactly the same as synj002 but can be run as an applet or an application (hence is longer to cater for running as an applet. synj001 is a Java application that on each requested iteration issues sets of six ECI synchronous calls for each LUW. The first two calls are followed by an ECI_BACKOUT. The fourth and fifth calls are followed by an ECI_COMMIT. The commarea on each call is initialised to 18 dashes. The server returns the current date and timestamp. The default CICS server program is the supplied SRVTIME which is compatible on all CICS servers. If desired, a different server program can be supplied as an input parameter to this applet/application. This program contains no data conversion for the commarea. Parameters can be overridden via command line. Issue "synj001 -?" for help and the default settings.

synj002 - Extended ECI Synchronous Calls with Multiple LUWs

Can be run as an applet or application.

synj002 - Extended ECI Synchronous Calls with multiple LUWs Written : Nov 96 - Alan Hollingshead synj002 is a Java program that on each requested iteration issues sets of six ECI synchronous calls for each LUW. The first two calls are followed by an ECI_BACKOUT. The fourth and fifth calls are followed by an ECI_COMMIT. The commarea on each call is initialised to 18 dashes. The server returns the current date and timestamp. The default CICS server program is the supplied SRVTIME which is compatible on all CICS servers. If desired, a different server program can be supplied as an input parameter to this applet/application. This program contains no data conversion for the commarea. If run as an applet - parameters passed via synj002.html If run as an application - parameters can be overridden via command line Issue "synj002 -?" for help and the default settings.

asmj002 - Asynchronous Calls with Message Qualifiers

Can be run as an applet or application.

asmj002 - Asynchronous Calls with Message Qualifiers. Followed by: ECI_GET_SPECIFIC_REPLY_WAIT or ECI_GET_SPECIFIC_REPLY loop. Written : Apr 97 - Alan Hollingshead Summary : Issue 5 async calls with Message Qualifiers 5, 4, 3, 2, 1, with optional 2 second delay between each one. Issue ECI_GET_SPECIFIC_REPLY(_WAIT) for each Message_Qualifier in order 1, 2, 3, 4, 5 checking timestamps are in reverse order. asmj002 is a Java program that on each requested iteration issues five asynchronous calls with Message Qualifiers assigned 5 through 1 (in reverse order). This is followed either by an ECI_GET_SPECIFIC_REPLY_WAIT (if the -w option is specified), or an ECI_GET_SPECIFIC_REPLY (the default) for each Message Qualifier in the ascending order 1 through 5. The timestamps returned in the commarea should appear in descending order to indicate that the eci_get_specific_reply(_wait) picked up the related Message Qualifier. On fast networks the timestamps may appear the same, and so the -2 option can be specified to separate each asynchronous call by 2 seconds (see Options: below). ECI_GET_SPECIFIC_REPLY calls: Up to nine ECI_GET_SPECIFIC_REPLY calls are issued to obtain the required response from the server. Between each attempt to receive this reply there is a one second delay to allow for network traffic or a busy server. The output shows which call obtained the response. For example, "eci_get_specific_reply #3 MQ 5" means that the response was obtained on the third attempt for Message Qualifier 5. If the result shows "eci_get_specific_reply #9" with a CICS Rc of -5, this indicates that the response was not received after nine attempts. Prior to each asynchronous call the commarea is initialised to 18 dashes. The server returns the current date and timestamp. The default CICS server program is the supplied SRVTIME which is compatible on all CICS servers. If desired, a different server program can be supplied as an input parameter to this applet/application. After all iterations have run, a banner displays the number of successful calls within iterations where asynchronous calls returned positive replies. Options: -w ... eci_get_specific_reply is the default. The -w option requests eci_get_specific_reply_wait. -2 ... between each asynchronous call a 2 second delay is issued. This allows the user to see the timestamps on the replies in reverse order to confirm that the eci Message_Qualifier is being used correctly. -c ... in certain circumstances (eg timeouts, or security error received on eci_get_specific_reply(_wait)) there may be outstanding replies from previous runs. The -c option issues repeated eci_get_specific_reply calls until eci_err_no_reply reports no more outstanding replies. (Alternatively stop and restart JGate). Security errors are specifically ignored. Warning: using the -c and -w options Care should be taken when running the program from multiple processes as the -c option may clear outstanding replies which another process is waiting on (if -w specified). Data conversion: This program contains no data conversion for the commarea. Any data conversion should be carried out on the server. If run as an applet - parameters are passed via asmj002.html. If run as an application - parameters can be overridden via command line. Issue "asmj002 -?" for help and the default settings.

asyj002 - ECI Asynchronous Call Testing

Can be run as an applet or application.

asyj002 - ECI_NO_EXTEND asynchronous calls with either ECI_GET_REPLY_WAIT or ECI_GET_REPLY loop Written : Apr 97 - Alan Hollingshead asyj002 is a Java program that on each requested iteration issues an asynchronous call (without callback or message qualifier). This is followed either by an ECI_GET_REPLY_WAIT (if the -w option is specified as an override), or an ECI_GET_REPLY (the default). In the latter case up to nine ECI_GET_REPLY calls are issued to obtain the response from the server. Between each attempt to receive this reply there is a one second delay to allow for network traffic or a busy server. With ECI_GET_REPLY calls the output shows which call obtained the response. For example, "eci_get_reply #3" means that the response was obtained on the third attempt. If the result shows "eci_get_reply #9" with a CICS Rc of -5, this indicates that the response was not received after nine attempts. After all iterations have run, a banner displays the number of successful iterations where asynchronous calls returned a positive reply. Prior to each asynchronous call the commarea is initialised to 18 dashes. The server returns the current date and timestamp. The default CICS server program is the supplied SRVTIME which is compatible on all CICS servers. If desired, a different server program can be supplied as an input parameter to this applet/application. This program contains no data conversion for the commarea. If run as an applet - parameters are passed via asyj002.html. If run as an application - parameters can be overridden via command line. Issue "asyj002 -?" for help and the default settings.

ascj001 - Multiple Asynchronous ECI Calls with Callback

Can be run as an applet or application.

ascj001 - Multiple Asynchronous ECI Calls with Callback Written : May 97 - Alan Hollingshead This applet/application can run multiple ECI asynchronous calls with callback simultaneously. The source file creates two classes: (1) ascj001.class ........ issues the asynchronous calls. (2) TestCB.class ......... handles all callbacks received. Issuing "java ascj001 -?" shows the following help and defaults: ASCJ001 - Multiple Asynchronous ECI Calls with Callback Usage: java ascj001 <parameters> -j JGate Default: (local hostname) -r JGate port Default: 2006 -s CICS server Default: -a application Default: SRVTIME -c # calls Default: 1 -i # iterations Default: 1 -d delay Default: 0 seconds -u userid Default: SYSAD -p password Default: SYSAD -! debug Default: false -? This help panel Example: java ascj001 -s cicstcp The above example overrides the server setting of <null> with cicstcp. Parameter overrides: -j ... hostname or IP address where Java Gateway is running. The default is your local hostname. -r ... Java Gateway port. This defaults to 2006 unless otherwise specified when starting the Java Gateway. -s ... if the CICS Client is being used to connect to a CICS server, null takes the first CICSCLI.INI setting. Otherwise specify a valid entry defined in the CICSCLI.INI file. If a CICS Client is not being used, a null value will use the local server ECI, if supported. -a ... name of server application. -c ... number of calls within an iteration. Each call is assigned a different message_qualifier. -i ... number of iterations. -d ... a delay in seconds between each call (as specified by -c). -u ... userid, if required by the server mirror transaction. -p ... password, if required by the server mirror transaction. -! ... some debug info is supplied if "-!" is specified. -? ... displays the help panel and defaults. Prior to each ECI call the commarea is initialised to 18 dashes. The server returns the current date and timestamp. The default CICS server program is the supplied SRVTIME which is compatible on all CICS servers. If desired, a different server program can be supplied as an input parameter to this applet/application. This program contains no data conversion for the commarea. If run as an applet - parameters are passed via ascj001.html. If run as an application - parameters can be overridden via command line. Example: Command line input: java ascj001 -c 3 -i 2 Sample output: ASCJ001 - Multiple Asynchronous ECI Calls with Callback -j JGate -> myHost -r JGate port -> 2006 -s CICS server -> (not specified) -a application -> SRVTIME -c # calls -> 3 -i # iterations -> 2 -d delay between calls -> 0 seconds -u userid -> SYSAD -p password -> SYSAD -! debug -> false -? help panel --- Successfully created JavaGateway connection --- # Call Commarea Data Length CICS Rc Abend Call OK? -- ----------------- ----------------- ------ ------- ----- -------- 1 eci_async + mq 1 -- flow --> 1 eci_async + mq 2 -- flow --> 1 eci_async + mq 3 -- flow --> eci_async + mq 2 28/05/97 16:49:15 18 0 OK eci_async + mq 3 28/05/97 16:49:15 18 0 OK eci_async + mq 1 28/05/97 16:49:15 18 0 OK 2 eci_async + mq 1 -- flow --> 2 eci_async + mq 2 -- flow --> eci_async + mq 1 28/05/97 16:49:15 18 0 OK 2 eci_async + mq 3 -- flow --> eci_async + mq 3 28/05/97 16:49:15 18 0 OK eci_async + mq 2 28/05/97 16:49:15 18 0 OK --- Successfully closed JavaGateway connection --- --- Calls successful: 6 out of 6 calls in 2 iterations --- The above example shows that the callback responses are not necessarily returned in the order sent. Hence a message_qualifier is assigned to each call and checked upon return (shown by "Call OK?" column). Note: in this program the delay parameter (-d) is between each call sent to the gateway as opposed to between iterations (as in most other programs in this suite). The default is for no delay between calls.

ecijlst - List Systems and Check Status

Can be run as an applet or application.

ecijlst - List all systems available; then for each server issue: (1) eci state async call (2) eci sync call with commarea to server application (3) eci state sync call Program completes with a status summary for all servers. The status summary shown is for the eci state sync call. Written : May 97 - Alan Hollingshead This source file creates two classes: (1) ecijlst.class .......... issues the state and eci_sync calls. (2) TestCBst.class ......... handles all callbacks received. Issuing "java ecijlst -?" shows the following help and defaults: ECIJLST - List Systems and Check Status Usage: java ecijlst <parameters> -j JGate Default: (local hostname) -r JGate port Default: 2006 -a application Default: SRVTIME -u userid Default: SYSAD -p password Default: SYSAD -! debug Default: false -? This help panel Example: java ecijlst -j myJGate The above example overrides the -j parameter with "myJGate". Parameter overrides: -j ... hostname or IP address where Java Gateway is running. The default is your local hostname. -r ... Java Gateway port. This defaults to 2006 unless otherwise specified when starting the Java Gateway. -a ... name of server application. -u ... userid, if required by the server mirror transaction. -p ... password, if required by the server mirror transaction. -! ... some debug info is supplied if "-!" is specified. -? ... displays the help panel and defaults. If run as an applet - parameters are passed via ecijlst.html. If run as an application - parameters can be overridden via command line. This applet/application will work for up to 100 systems. RECOMMENDATION: If using a (common) CICS Client, issue "CICSCLI /N" before running this program to suppress unwanted client pop-ups. Any CICS Client errors will continue to be written to the "CICSCLI.LOG" error file. NOTE: If this is the first attempt to connect to a given server, the server state may show "Unknown" after the first getStatus request. This will change to the 'real' state on the second state call (and is due to a bug in the CICS Client). Other known problems are that ECI_CONNECTED_TO_SERVER and ECI_CLIENTSTATE_INAPPLICABLE never appear due to CICS Client bugs. ECI_CONNECTED_TO_CLIENT and ECI_CLIENT_STATE_UP/DOWN are returned respectively instead. Extract of sample output: ECIJLST - List Systems and Check Status -j JGate -> r075452a -r JGate port -> 2006 -a application -> SRVTIME -u userid -> SYSAD -p password -> SYSAD -! debug -> false -? Help panel --- Successfully created JavaGateway connection --- Servers available: Server (1) OS/2NETB, Description: NetBIOS Server to TCLRTST1 Server (2) OS/2TCP , Description: TCP/IP Server to TCLRTST1 Server (3) AIX-TCP , Description: TCP/IP Server to florence Server (4) OS/2SNA , Description: SNA Server TCLRTST1 Server (5) VSE-SNA , Description: SNA Server Server (6) CICS410 , Description: SNA Server ---------------------------------------------- Server (1 of 6) OS/2NETB ---------------------------------------------- ---> Asynchronous getStatus call for server: OS/2NETB <--- Results of asynchronous getStatus request Server: OS/2NETB Connection status ... ECI connected to client Server status ....... ECI server state up Client status ....... ECI client state up ---> Flow eci_sync call to server: OS/2NETB <--- Results of eci_sync call Commarea ..... 02/06/97 13:51:48 CICS Rc ...... 0 Abend code ... ---> Synchronous getStatus call for server: OS/2NETB <--- Results of synchronous getStatus request Server: OS/2NETB Connection status ... ECI connected to client Server status ....... ECI server state up Client status ....... ECI client state up ::: etc ::: etc ::: etc ::: Status Summary: Connection Server Client ECI_SYNC CICS Server Status Status Status Results RC -------- ---------- -------- ------------ ----------------- ---- OS/2NETB To Client Up Up 02/06/97 13:51:48L 0 OS/2TCP To Client Up Up 02/06/97 13:51:49L 0 AIX-TCP To Client Up Up 02/06/97 13:52:01L 0 OS/2SNA To Client Up Up 02/06/97 13:51:50L 0 VSE-SNA To Client Down Up ������������������ -3 CICS410 To Client Up Up 02/06/97 13:50:54� 0

ecijtpn - ECI_SYNC_TPN and ECI_ASYNC_TPN calls

Can be run as an applet or application.

ecijtpn - ECI_SYNC_TPN and ECI_ASYNC_TPN calls (1) eci_sync_tpn (2) eci_async_tpn (3) eci_get_reply_wait (4) eci_sync (5) eci_async (6) eci_get_reply_wait Written : Jun 97 - Alan Hollingshead This program tests the call types: eci_sync_tpn and eci_async_tpn, and uses method isTPNTransid to confirm whether tpn is being used. Note: tpn is currently not supported on Unix platforms. Testing should include: (1) issuing the calls using the default transid CPMI (2) issuing the calls specifying your own transid. You must define your own transid in the server. For example, on CICS for OS/2 CPMI runs program FAAMIR; therefore you can define your own transid, eg MYMI, to call program FAAMIR. The example below shows how to override CPMI with MYMI. Note that the value of transid is case-sensitive. (3) testing with a mirror less than 4-characters in length. (4) with a transid undefined on the server. The _tpn calls should abend, but the following non-tpn calls should use the default CPMI transid and work successfully. Issuing "java ecijtpn -?" shows the following help and defaults: ECIJTPN - ECI_SYNC_TPN and ECI_ASYNC_TPN calls Usage: java ecijtpn <parameters> -j JGate Default: (local hostname) -r JGate port Default: 2006 -s CICS server Default: -a application Default: SRVTIME -t transid Default: CPMI -i # iterations Default: 1 -d delay Default: 0 seconds -u userid Default: SYSAD -p password Default: SYSAD -! debug Default: false -? This help panel Example: java ecijtpn -s cicstcp -t MYMI The above example overrides the server setting of <null> with cicstcp, and the default CICS mirror transid of CPMI with MYMI. Parameter overrides: -j ... hostname or IP address where Java Gateway is running. The default is your local hostname. -r ... Java Gateway port. This defaults to 2006 unless otherwise specified when starting the Java Gateway. -s ... if the CICS Client is being used to connect to a CICS server, null takes the first CICSCLI.INI setting. Otherwise specify a valid entry defined in the CICSCLI.INI file. If a CICS Client is not being used, a null value will use the local server ECI, if supported. -a ... name of server application. -t ... name of transid server program to run under. Equivalent to eci_tpn on (common) CICS Client. -i ... number of iterations (of each set of three calls). -d ... a delay in seconds between each iteration. -u ... userid, if required by the server mirror transaction. -p ... password, if required by the server mirror transaction. -! ... some debug info is supplied if "-!" is specified. -? ... displays the help panel and defaults. Prior to each ECI call the commarea is initialised to 18 dashes. The server returns the current date and timestamp. The default CICS server program is the supplied SRVTIME which is compatible on all CICS servers. If desired, a different server program can be supplied as an input parameter to this applet/application. This program contains no data conversion for the commarea. If run as an applet - parameters are passed via ecijtpn.html. If run as an application - parameters can be overridden via command line. Example: java ecijtpn -t MYMI The above example overrides the transid setting of CPMI with MYMI which has been defined on the server to run the mirror program. Example output: ECIJTPN - ECI_SYNC_TPN and ECI_ASYNC_TPN calls -j JGate -> myHost -r JGate port -> 2006 -s CICS server -> (not specified) -a application -> SRVTIME -t transid -> MYMI -i # iterations -> 1 -d delay -> 0 seconds -u userid -> SYSAD -p password -> SYSAD -! debug -> false -? for help panel --- Successfully created JavaGateway connection --- # Call Mirror Commarea Data Length CICS Rc Abend -- ------------------ ------ ----------------- ------ ------- ----- 1 eci_sync_tpn MYMI 06/06/97 13:22:49 18 0 1 ....isTPNTransid? true 1 eci_async_tpn MYMI ----------------- 18 0 1 ....isTPNTransid? true 1 eci_get_reply_wait 06/06/97 13:22:49 18 0 1 eci_sync MYMI 06/06/97 13:22:49 18 0 1 ....isTPNTransid? false 1 eci_async MYMI ----------------- 18 0 1 ....isTPNTransid? false 1 eci_get_reply_wait 06/06/97 13:22:49 18 0 --- Successfully closed JavaGateway connection --- --- 6 out of 6 calls during 1 iterations were successful ---

synjtpn : Extended ECI_SYNC_TPN Calls

Can be run as an applet or application.

synjtpn - Extended ECI_SYNC_TPN Calls Written : Jun 97 - Alan Hollingshead This program tests the call type eci_sync_tpn for extended eci calls and multiple LUWs. The program is based on synj002 which uses eci_sync calls instead. Note: tpn is currently not supported on Unix platforms. Testing should include: (1) issuing the calls using the default transid CPMI (2) issuing the calls specifying your own transid. You must define your own transid in the server. For example, on CICS for OS/2 CPMI runs program FAAMIR; therefore you can define your own transid, eg MYMI, to call program FAAMIR. The example below shows how to override CPMI with MYMI. Note that the value of transid is case-sensitive. (3) testing with a mirror less than 4-characters in length. (4) with a transid undefined on the server. The _tpn calls should abend, but the following non-tpn calls should use the default CPMI transid and work successfully. synjtpn is a Java program that on each requested iteration issues sets of six ECI synchronous calls for each LUW. The first two calls are followed by an ECI_BACKOUT. The fourth and fifth calls are followed by an ECI_COMMIT. The commarea on each call is initialised to 18 dashes. The server returns the current date and timestamp. The default CICS server program is the supplied SRVTIME which is compatible on all CICS servers. If desired, a different server program can be supplied as an input parameter to this applet/application. This program contains no data conversion for the commarea. If run as an applet - parameters passed via synjtpn.html If run as an application - parameters can be overridden via command line Issue "synjtpn -?" for help and the default settings. The output is similar to the extract shown for synj002.

synj0c3 : Detect Maximum Commarea Length

Can be run as an applet or application.

synj0c3 - Detect Maximum Commarea Length Written : Jun 97 - Alan Hollingshead This applet/application can issue non-extended ECI synchronous calls incrementing the commarea length until the maximum length (governed by CICS server and/or communication protocol) has been reached. Issuing "java synj0c3 -?" shows the following help and defaults: SYNJ0C3 - Detect Maximum Commarea Length> Usage: java synj0c3 <parameters> -j JGate Default: (local hostname) -r JGate port Default: 2006 -s CICS server Default: (not specified) -c Initial commarea length Default: 18 -+ increment commarea length Default: false -i # iterations Default: 1 -a application Default: SRVTIME -u userid Default: SYSAD -p password Default: SYSAD -d delay between iterations Default: 0 seconds -! debug Default: false -? This help panel Example: java synj0c3 -c 32000 -+ The above example issues the first non-extended ECI synchronous call with commarea length 32000, and then further ECI calls incrementing the commarea length by one each time until an abend occurs (usually the maximum commarea size, plus one.). The commarea length is reset to the initial commarea length (-c) upon the start of each new iteration. The maximum commarea size varies according to the CICS server and communication protocol being used (ie SNA, NetBIOS, TCP/IP or named pipes). Initial commarea size should be 18 or more characters in length otherwise the commarea is not large enough to return a date and timestamp. Parameter overrides: -j ... hostname or IP address where Java Gateway is running. The default is your local hostname. -r ... Java Gateway port. This defaults to 2006 unless otherwise specified when starting the Java Gateway. -s ... if the CICS Client is being used to connect to a CICS server, null takes the first CICSCLI.INI setting. Otherwise specify a valid entry defined in the CICSCLI.INI file. If a CICS Client is not being used, a null value will use the local server ECI, if supported. -c ... initial commarea length. The maximum value that can be entered is 65536 else a Java exception error will (deliberately) appear. -+ ... the commarea length is incremented by one each time until an abend occurs. Usually this will be when the maximum commarea size has been exceeded. -i ... number of iterations (of each set of three calls). -a ... name of server application. -u ... userid, if required by the server mirror transaction. -p ... password, if required by the server mirror transaction. -d ... a delay in seconds between each iteration. -! ... some debug info is supplied if "-!" is specified. -? ... displays the help panel and defaults. If run as an applet - parameters passed via synj0c3.html If run as an application - parameters can be overridden via command line Issue "synj0c3 -?" for help and the default settings. Example output: SYNJ0C3 - Detect Maximum Commarea Length -j JGate -> testb -r JGate port -> 2006 -s CICS server -> (not specified) -c initial commarea length -> 32600 -+ increment commarea length -> true -i # iterations -> 1 -a application -> SRVTIME -u userid -> SYSAD -p password -> SYSAD -d delay between iterations -> 0 seconds -! debug -> false -? help panel --- Successfully created JavaGateway connection --- Iteration Commarea Data (18) Was/Is Length CICS Rc Abend --------- ------------------ ------------- ------- ----- 1 01/07/97 17:54:36 32600 32631 0 1 32600 32632 -7 AZI6 --- Successfully closed JavaGateway connection --- --- Calls successful ... 32 out of 33 --- Iterations run ..... 1 out of 1

synjms3 : Synchronous Calls to Multiple Servers

Can be run as an applet or application.

synjms3 - Synchronous Calls to Multiple Servers Written : July 97 - Alan Hollingshead This applet/application can issue non-extended ECI synchronous calls to one, two, or three servers. Issuing "java synjms3 -?" shows the following help and defaults: SYNJMS3 - Synchronous Calls to Multiple Servers Usage: java synjms3 <parameters> -j JGate Default: (local hostname) -r JGate port Default: 2006 -l list servers Default: false -s1 CICS server-1 Default: (not specified) -s2 CICS server-2 Default: null -s3 CICS server-3 Default: null -i # iterations Default: 1 -a application Default: SRVTIME -t transid Default: CPMI -u userid Default: SYSAD -p password Default: SYSAD -d delay between iterations Default: 0 seconds -! debug Default: false -? this help panel Example: java synjms3 -s1 cicsos2 -s2 cicsaix -s3 cicsesa The above example issues non-extended ECI synchronous calls to CICS server-1 (uses default if not specified unless JGate on MVS) and then CICS server-2 and server-3 unless these are null. Parameter overrides: -j ... hostname or IP address where Java Gateway is running. The default is your local hostname. -r ... Java Gateway port. This defaults to 2006 unless otherwise specified when starting the Java Gateway. -l ... list servers only (does not issue ECI synchronous call) -s1 .. if the CICS Client is being used to connect to a CICS server, null takes the first CICSCLI.INI setting. Otherwise specify a valid entry defined in the CICSCLI.INI file. If a CICS Client is not being used, a null value will use the local server ECI, if supported. Note: a null value is not valid for the JGate on MVS. -s2 .. name of the second CICS server to send an ECI request to. -s3 .. name of the third CICS server to send an ECI request to. -i ... number of iterations (of each set of three calls). -a ... name of server application. This should be the same name for all servers used. -t ... transid. This will pass in the transid for security purposes but will still use the default mirror (eg CPMI). To actually run under a different mirror, eci_sync_tpn with transid specified, is required. -u ... userid, if required by the server mirror transaction. -p ... password, if required by the server mirror transaction. -d ... a delay in seconds between each iteration. -! ... some debug info is supplied if "-!" is specified. -? ... displays the help panel and defaults. Example: java synjms3 -s1 cicsos2 -s2 cicsaix -s3 cicsesa -i 2 SYNJMS3 - Synchronous Calls to Multiple Servers -j JGate -> hollings -r JGate port -> 2006 -l list servers -> false -s1 CICS server1 -> cicsos2 -s2 CICS server2 -> cicsaix -s3 CICS server3 -> cicsesa -i # iterations -> 2 -a application -> SRVTIME -t transid -> CPMI -u userid -> SYSAD -p password -> SYSAD -d delay between iterations -> 0 seconds -! debug -> false -? help panel --- Successfully created JavaGateway connection --- Iteration Server Commarea Data CICS Rc Abend --------- -------- ----------------- ------- ----- 1 cicsos2 30/07/97 12:41:26 0 1 cicsaix 30/07/97 12:41:27 0 1 cicsesa 30/07/97 12:41:29 0 2 cicsos2 30/07/97 12:41:30 0 2 cicsaix 30/07/97 12:41:31 0 2 cicsesa 30/07/97 12:41:33 0 --- Successfully closed JavaGateway connection --- --- Calls successful ... 6 out of 6 --- Iterations run ..... 2 out of 2

srvtime - CICS Server application

SRVTIME (ServerTime) is a very simple program that runs on the CICS server. The commarea received (usually a series of hyphens) from the client program is replaced by the current date and timestamp in the first 18 characters of the commarea.
If desired, SRVTIME can output the length of commarea received from the calling client program, and display the server date and timestamp returned in the commarea. This output can be to either CSMT, the console, neither, or both.

Source:


Help! What's happening?

Some runtime problems you may encounter: