Batch transformation getting I/O exception error while writing pdf files to the ?/output/nnnnnn subdirectory.

Document ID : KB000030677
Last Modified Date : 14/02/2018
Show Technical Document Details

Starting with CA Spool V12, customers can submit a Batch Transformer job step to write pdf files as members of a PDS or PDSE dataset allocated by the SYSUT2 DD statement or by the DD statement specified by the OUT= parameter.

As documented in the CA Spool Java Transformers Administration Guide, Chapter 3, Customizing the Transformers,  paragraph Batch Transformers Utility Parameters, it can simply be done by: 

·  adding TR=A2PDI on the EXEC PGM=ESFBX2YY PARM field

·  allocating a PDS or PDSE dataset on a SYSUT2 DD statement

·  including an STDENV DD statement and allocate a file containing X2YY_INPUT, X2YY_OUTPUT and X2YY_REPORTS environment variables


However depending on the security settings and permissions it may happen that the transformation fails with a message that points an I/O exception while writing pdf files to the …/output/nnnnnn subdirectory.  That is particularly true when the userid assigned to the batch job is different from the userid of the Java FSS task.

Messages like the following can be seen in the rpt transformation report: Could not obtain an output stream from any of the following:




The userid assigned to the Java Transformer FSS task and the userid assigned to the job executing the Batch Transformer Utility must have the appropriate permissions to read and write files to the directories specified in the X2YY_INPUT, X2YY_OUTPUT and X2YY_REPORTS variables. They both must also have update authority for the CA Spool target node and the files queued for that node.

Adding variable X2YY_IDIR_777 to the STDENV file allows to have the extra nnnnnn sub-directory to be created with permissions 777.

The only valid value for X2YY_IDIR_777 is YES. This environment variable sets the permission bits for any temporary directory that is created when the I option in the Batch Transformer utility is set to 777. This environment variable can be useful when you initially implement the I option in the job steps of the Batch Transformer utility. However, the temporary directory is not secure. Therefore, we recommend that you do not use this environment variable permanently.