Kirk,

Why not just set up the PROC with a default concatenated DD, like this:

//STDENV   DD  DISP=SHR,DSN=NULLFILE
//                 DD DISP=SHR,DSN=INST.ADD.JAVA.STDENV

Then the user overrides with:

//JVMPRC80.STDENV DD DSN=user-supplied.data

I believe the concatenation will survive that method of override.

This stripped-down example was tested and works on z/OS V2.1, printing *two* 
copies of the JCL:

Member TRYME of DSN=&SYSUID..TEST.JCL is:

//TSOUSERZ JOB (...),...
//JVMPRC80 PROC OUT=*                                 
//JAVAJVM  EXEC PGM=IEBGENER                          
//SYSIN    DD  DUMMY                                  
//SYSPRINT DD  SYSOUT=&OUT                            
//SYSUT2   DD  SYSOUT=&OUT                            
//SYSUT1   DD  DISP=SHR,DSN=NULLFILE                  
//         DD  DISP=SHR,DSN=&SYSUID..TEST.JCL(TRYME)  
//         PEND                                       
//*                                                   
//TRYPROC  EXEC JVMPRC80                              
//JAVAJVM.SYSUT1 DD DSN=&SYSUID..TEST.JCL(TRYME)      
//*                                                   

HTH

Peter
-----Original Message-----
From: IBM Mainframe Discussion List [mailto:[email protected]] On Behalf 
Of Kirk Wolf
Sent: Tuesday, September 29, 2015 4:51 PM
To: [email protected]
Subject: Way to change a PROC to add a concatenation to existing DD?

Consider an existing PROC:

//JVMPRC80 PROC JAVACLS=, < Fully Qfied Java class..RQD
// ARGS=, < Args to Java class
// LIBRARY=’<HLQ>.JZOS.LOADLIB’, < STEPLIB FOR JVMLDM module
// VERSION=’80’, < JVMLDM version: 80
// LOGLVL=’’, < Debug LVL: +I(info) +T(trc)
// REGSIZE=’0M’, < EXECUTION REGION SIZE
// LEPARM=’’
//JAVAJVM EXEC PGM=JVMLDM&VERSION,REGION=&REGSIZE,
// PARM=’&LEPARM/&LOGLVL &JAVACLS &ARGS’
//STEPLIB DD DSN=&LIBRARY,DISP=SHR
//SYSPRINT DD SYSOUT=* < System stdout
//SYSOUT DD SYSOUT=* < System stderr
//STDOUT DD SYSOUT=* < Java System.out
//STDERR DD SYSOUT=* < Java System.err
//CEEDUMP DD SYSOUT=*
//ABNLIGNR DD DUMMY
//*
//*The following DDs can/should be present in the calling JCL
//*
//*STDIN DD < OPTIONAL - Java System.in
//*STDENV DD < REQUIRED - JVM Environment script
//*MAINARGS DD < OPTIONAL - Alt. method to supply args
// PEND


STDENV is a DD that is opened by the program (JVMLDM80).

An installation would like to be able to automatically add control
statements to the end of this DD, without changing the JCL.

So, instead we would want:

//STDENV  DD DDNAME=MYENV
//                 DD DISP=SHR,DSN=INST.ADD.JAVA.STDENV

but this would require that all JCL that used this PROC would need to
change their DD:STDENV to DD:MYENV.

Here's my question:  is there a way to change the PROC so that the JCL that
uses it does not need to be changed?   Its even OK to front-end the
JVMLDM80 program with an installation-written program that does something
and then invokes JVMLDM80.    Its not possible (or desirable) to change
JVMLDM80.

Maybe a front-end program that uses SVC99 to reallocate STDENV as the
concatenation?   I'm not sure if this can be done without freeing the
existing STDENV DD.       I guess that the front-end program could create a
temporary dataset and then copy the existing STDENV DD to it and then free
STDENV and then reallocate the concatenation....

Thanks in advance for any better suggestions.

Kirk Wolf
Dovetailed Technologies
http://dovetail.com

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN

This message and any attachments are intended only for the use of the addressee 
and may contain information that is privileged and confidential. If the reader 
of the message is not the intended recipient or an authorized representative of 
the intended recipient, you are hereby notified that any dissemination of this 
communication is strictly prohibited. If you have received this communication 
in error, please notify us immediately by e-mail and delete the message and any 
attachments from your system.


----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN

Reply via email to