Sorry for the delayed response folks
THIS ISSUE IS RESOLVED NOW AFTER CONTACT CA SUPPORT... BELOW IS THE ISSUE DETAILS
We are having issue while reading the Russian characters in Gateway.
We developed a policy in 7.1 version of Layer 7 Securespan Gateway which receives JSON and converts that to SOAP while sending it to backend.
Unfortunately Gateway is not able to recognize the UTF-8 charset receiving in the FirstName and LastName fileds in the below messages eventhough the content type and charset is specified in the header. So Gateway is passing the junk characters to backend.
Below is the request as sending by the consumer and the requested captured at Gateway.
Original Request: As sending by the Consumer {"siteId": 590,"eventId": 271,"channelId": 1,"email": "test5906@example.com","firstName":"????","lastName":"????","CommunicationOptIn": true,"programCommunicationOptIn": true,"locale":"ru_RU","termsAccepted" : true,"privacyAccepted" : true,"binNumber" : 55218625}
Header Captured in Gateway:
host:XXXXXXX, connection:keep-alive, content-length:295, cache-control:no-cache, origin:chrome-extension://fdmmgilgnpjigdojojpjoooidkmcomcm, us
er-agent:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.85 Safari/537.36, content-type:text/plain;charset=UTF-8, accept:*/ *, accept-encoding:gzip, deflate, accept-language:en-US,en;q=0.8, cookie:_ga=GA1.2.574680444.1429203491; s_pers=%20s_vnum%3D1438443512193%2526vn%253D2%7C1438443512193%
3B%20s_fid%3D4825D911E9AA2138-0D8212AD1C265CA4%7C1500826710730%3B%20s_getNewRepeat%3D1437668310737-Repeat%7C1440260310737%3B%20s_invisit%3Dtrue%7C1437670110741%3B; s_v i=[CS]v1|2A31C024851D2D39-40000117E0000956[CE]; WT_FPC=id=469b4a0d-ebb1-4801-8528-2c34a18bbbed:lv=1444079257732:ss=1444079256286
Original request captured Gateway:
{"siteId": 590,"eventId": 271,"channelId": 1,"email": "test5906@example.com","firstName":"Ðжон","lastName":"СмиÑ","mcCommunicationOptIn": true,"programCommunicationOptIn": true,"locale":"ru_RU","termsAccepted" : true,"privacyAccepted" : true,"binNumber" : 55218625}
Issue is due to following:
The Apply JSON Transformation assertion is causing the observed behavior. If I add an Apply JSON Transformation to the provided message than the valid UTF-8 characters do not retain their UTF-8 encoding.
This behavior does not appear to occur in version 8.3.00, is documented as such in the list of resolved issues: https://docops.ca.com/display/GATEWAY83/Resolved+Issues.. I ran my tests on version 8.3.00 and was not able to reproduce the issue at that point. This can be avoided in version 7.1 by ensuring that a charset designation is added to the Content-Type header. I was able to reproduce the observed behavior and implement the workaround successfully by setting the content type as "application/json;charset=utf-8.
Thanks,
Srav