IBM Support

DFHWB0723 CICS Web Support CWXN transactions failing with web analyzer RESPONSE: 4 REASON: 1.

Question & Answer


Question

I use CICS web support TCPIPSERVICE definitions to allow external applications to make SOAP web service calls to mainframe applications. Our CICS Web Support periodically encounter failures in the web analyzer program.

The web analyzer program is detecting that the input request's URI data does not pass the check against the minimum length constant (WBADX_MIN_RESOURCE_LENGTH) . This causes URP_RESPONSE to be set to 4 and URP_REASON to 1 and then the web analyzer returns without processing the request.

Looking at a dump of the situation, I find the tasks in a SO_RECV with either no data or only one byte in REQ_BUFF.

Answer

The client sending in only the first byte of the HTTP request is a more common practice now.
When CICS receives this request, the CWXN task is unable to determine if this is a valid HTTP request or a non-HTTP request. If there was enough of an HTTP request sent in to identify a valid method (for example, POST) then CWXN would iterate its receive loop and get the rest of the data. When only a single byte is received it is up to the analyzer program to decide if the request is complete or if more data is required.

In this instance, the analyzer needs to return URP_EXCEPTION and a reason of URP_RECEIVE_OUTSTANDING. This will cause CWXN to issue another receive and get the rest of the request.

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

Product Synonym

CICS/TS CICSTS CICS TS CICS Transaction Server

Document Information

Modified date:
21 August 2017

UID

dwa1352498