Env: OnPremise OPDK 1701
Problem : Client is sending the Accept-Encoding header as comma-separated-value (gzip,deflate,br) but somehow when Apigee Edge receives the request payload all CSV headers are being converted into individual headers (below) and the call is failing internally within the Apigee Edge with 500 internal error.
Accept-Encoding: gzip
Accept-Encoding: deflate
Accept-Encoing:br
Error Response :
<?xml version="1.0" encoding="UTF-8"?> <errors> <error>~ARRAY~</error> </errors>
ResponseContent in Trace :
<?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"><SOAP-ENV:Body><SOAP-ENV:Fault><faultcode xmlns="">SOAP-ENV:Server.InternalServerError</faultcode><faultstring xmlns="">[Ljava.lang.String; cannot be cast to java.lang.String</faultstring></SOAP-ENV:Fault></SOAP-ENV:Body></SOAP-ENV:Envelope>
The same API works fine in the SaaS Apigee Edge.
Any help or pointers will be highly appreciated. Thanks.
@Mudit , can you confirm if the 500 ISE is from Edge or backend as the response is soap which Apigee doesn't send unless you construct a soap payload ?
We narrowed it down to the MP and not from the backend. Is there any property at the message-processor level in http.properties to allow csv or multivalues ?