Siebel Patchset 19.12 And Above Causes Inbound Web Service Response To Include 'Transfer-encoding = Chunked' Which Causes Incomplete Response/No Response/Empty Response and/Or Blank Response Returned To The External System
(Doc ID 2644442.1)
Last updated on SEPTEMBER 28, 2021
Applies to:Siebel CRM - Version 19.12 and later
Information in this document applies to any platform.
After upgrading Siebel server from patchset 19.3 to patchset 19.12 from 19.3, if the Inbound web service response size is more than 35Kb, then the SOAP header is setting with the parameter 'Transfer-encoding' as 'Chunked'. Due to the 'Transfer-encoding' as 'Chunked', it sends the response to the external system in chunks instead of one complete message, but the external system may not be able to handle the response in chunks and thus fails with error at the external system side.
Additionally, some other symptoms also include situations where there is No Response, Empty Response or Blank Responses returned to the external system.
In patchset 19.3, with the same response size having more than 35Kb, the SOAP header is not setting the parameter 'Transfer-encoding' as 'Chunked' and the entire response is sent to the external system.
The issue can be reproduced as follows:
1. Setup an Inbound Web Service to query for Account and return it
Web Service: Siebel Account
2. Create 2 accounts:
a. Account with few children:
Account Id: 1-16OK0
Account Name: ACCOUNT SMALL
Add 10 addresses to this account
b. Account with lots of children:
Account Id: 1-16OKJ
Account Name: ACCOUNT BIG
Add 100 addresses to this account (you can highlight a bunch using CTRL + click) then click + to add them.
3. Use SoapUI to send web service request for ACCOUNT SMALL
The response header shows:
The entire response is returned in SoapUI, there is no issue nor error here with SoapUI and the response message/content, but it is possible to use the difference in the header via SoapUI to test this situation.
However, there is an issue at an external system side that would make such a call into Siebel, the external system getting the chunked response in the large response case and it is not able to handle the chunked response, thus is fails with an error on the external system side.
To view full details, sign in with your My Oracle Support account.
Don't have a My Oracle Support account? Click to get started!
In this Document