Rabbit MQ VSM and content_type - JSON payload is not being parsed properly

Document ID : KB000106110
Last Modified Date : 16/07/2018
Show Technical Document Details
Issue:
During Rabbit MQ virtual service playback, the VSE is not parsing the JSON arguments properly.
When log level is set to DEBUG, log4j.logger.VSE=INFO, VSEAPP, we see incomingArray is [].

incomingArrayInspectionView

This is the incoming request:
Exchange AA-BBB.CCC.DDDD
timestamp: 9999999999
message_id: abc999abc999abcdefg-1234567abcdef
priority: 0
delivery_mode: 2
headers: 
MULE_SESSION: aBCD990abC...

MULE_ENCODING: UTF-8
content_encoding: UTF-8
content_type: application/json

Payload :

{
"Id": "000000AZZZZ999999",
"Code": "XZ",
"language": "en",
...
}
Environment:
DevTest on release 10.3.
Cause:
The message is not following the MIME Content-Type and MIME Content-Encoding standards. It's putting the character set in the Content-Encoding field rather than putting it as part of Content-Type - content_type: "application/json; charset=UTF-8".

 
Resolution:
If you believe you are facing this issue, please open a support ticket and mention DE374312.
We will be happy to provide you a patch if it matches your issue.
The fix ignores unsupported or otherwise invalid values for Content-Encoding.
With the patch, 10.3 is able to read the text body out of the request message, and the JSON DPH extracts the arguments.

 
Additional Information:
More information in the community post below:
https://communities.ca.com/message/242126923-re-rabbit-mq-message-in-byte-array-format-and-ca-devtest-unable-to-read-the-format?commentID=242126923&et=watches.email.thread#comment-242126923