book
Article ID: KB0090481
calendar_today
Updated On:
Description
Resolution:
Description:
= = = = = = =
1). C/C++ API - There is no encoding tag in RV messages. The C and C++ libraries do not do any character set translation, so what you send is what you get.
2). Java API - There is no encoding tag in the RV message either. Before sending an outbound message, Rendezvous software translates these strings into the bytes according to the locale when you update/create the message. Conversely, when extracting a string from an inbound message, Rendezvous translates it according to the locale of the process when receiving the message. If the locale used by the sending application is different from the locale used by receiving application, the data received could be wrong.
3). In the following requirement:
<A: sender_utf-8> ==> <B: listener_for_sender_utf-8 & sender_iso-8859-1> ==> <C: listener_iso-8859-1>
If the application in step B is C code, again here C and C++ libraries do not do any character set translation, so what you send is what you get. If you need iso-8859-1 encoding, you just need to convert the received message from UTF-8 to iso-8859-1 in step B/C. If the application in step B is Java code, you should use UTF-8 to get the correct data. You could send it out with Opaque byte[] instead of a String in iso-8859-1 encoding, or convert it yourself in step C.
Issue/Introduction
String and Character Encodings in the C/Java API.