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

Document created by Francis_Huguet Employee on Jun 17, 2015Last modified by Lenn Thompson on Nov 29, 2017
Version 4Show Document
  • View in full screen mode

Starting with CA Spool r12 customers can submit a Batch Transformers step to write pdf files as members of a PDS or PDSE dataset allocated on the SYSUT2 statement.

 

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:

 

  1. java.io.IOException: Could not obtain an output stream from any of the following:

/u/users/nfs/xenos/output/000170/W0000008.pdf

at com.xenos.d2e.io.IoUtility.getOutputStreamFor(IoUtility.java:1942)

 

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.

Attachments

    Outcomes