IBM Support

DFHPI1008 ARRAY_TOO_LARGE received on webservice call

Troubleshooting


Problem

You are using a newly defined requester webservice, and the WSDL contains several maxOccurs statements. After generating a copybook with DFHWS2LS, the call to the webservice results in message: DFHPI1008 XML GENERATION FAILED BECAUSE OF INCORRECT INPUT (ARRAY_TOO_LARGE elementname) FOR WEBSERVICE webservname

Symptom

DFHPI1008 XML GENERATION FAILED BECAUSE OF INCORRECT INPUT (ARRAY_TOO_LARGE elementname) FOR WEBSERVICE webservname
Trace will have trace point: PI 0F0B PIII *EXC* INPUT_ERROR ARRAY_TOO_LARGE

Cause

The CICS web services assistant (DFHWS2LS and DFHLS2WS) usually map WSDL strings to fixed length COBOL character arrays. Furthermore, the number of occurrences field for maxOccurs is required to be aligned on a fullword boundary. If the structure happens to start at a non-fullword alignment, then padding will be added to the previous field so that the number field will be correctly aligned. This enlarges the array and results in the error.

Diagnosing The Problem

Compare the data in the commarea to the DFHWS-DATA. You will see there is a 1-3 byte shift.

Resolving The Problem

The language structures created by DFHWS2LS are assumed to be added into their own 01 level structure that is not shared with anything else. Define the request structure in its own 01 level to create the proper fullword alignment.

[{"Product":{"code":"SSGMGV","label":"CICS Transaction Server"},"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Component":"Web Services","Platform":[{"code":"PF035","label":"z\/OS"}],"Version":"5.1;4.2;4.1;3.2;3.1","Edition":"","Line of Business":{"code":"LOB35","label":"Mainframe SW"}}]

Product Synonym

CICS/TS CICS TS CICS Transaction Server

Document Information

Modified date:
15 June 2018

UID

swg21620857