SHA2 JAVACONTAINER UTFDATAFORMATEXCEPTION INVALID BYTE 2 SBL-EAI-00247
Last updated on JULY 11, 2017
Applies to:Siebel CRM - Version 18.104.22.168 [IP2014] and later
Information in this document applies to any platform.
After implementing steps from KM article How To Setup SHA2 Certificates And Call Outbound Web Services Using SHA2 Certificates In Siebel ip2016 Version?(Doc ID 2226450.1)
To make outbound web service calls using SHA2 encryption it was noticed the javacontainer converts the response to UTF-16 without actually changing the XML prologue , which remains indicating the data is UTF-8.
Once the XML converter tries to parse the results, it tries to read it as UTF-8 as per the prolog, and fails when there are special characters present.
U+00C4 (Latin Capital Letter A with Diaeresis) is converted from UTF-8 to UTF-16 hexadecimal codes so that:
c3 84 "LATIN CAPITAL LETTER A WITH DIAERESIS" (2 bytes)
C4 (same char but single byte UTF-16 hex code)
but since the prolog still says UTF-8, the parser expects " c3 84" and fails when it sees "C4" .
Sign In with your My Oracle Support account
Don't have a My Oracle Support account? Click to get started
Million Knowledge Articles and hundreds of Community platforms