Codesets negotiation error between JacORB and omniORB
|
|
---|---|
Hi tangoer: using jive to set `string_scalar` attribute of TangoTest device with a string containing multi-bytes characters, like "hello😄", the following error occurs in jive: org.omg.CORBA.DATA_CONVERSION: server side exception: null. I think this is caused by the codeset negotiation between JacORB and omniORB, but I cannot find a way to set the codeset in jive. Environment: - omniORB 4.3.2 - libzmq-4.3.5 (cppzmq-4.10.0) - tango-10.0.2 (installed from tango-10.0.2.tar.gz) https://omniorb.net/omni43/omniORB/omniORB009.html: For the ORB to know how to handle strings and wstrings given to it by the application, it must know what code set they are represented with, so it can properly translate them if need be. The defaults are ISO 8859-1 (Latin 1) for char and string, and UTF-16 for wchar and wstring. Different code sets can be chosen at initialisation time with the nativeCharCodeSet and nativeWCharCodeSet parameters. The supported code sets are printed out at initialisation time if the ORB traceLevel is 15 or greater. https://www.jacorb.org/releases/3.9/ProgrammingGuide.pdf : 3.2.3 Codesets. JacORB implements codeset negotiation through org.jacorb.orb.giop.CodeSet. Codesets that are currently supported are - ISO8859_1 - ISO8859_15 - UTF8 - UTF16 - UCS2 |