[omniORB] OmniOrb and CP1252 (Windows Latin 1) vs. ISO-8859-1

Duncan Grisby duncan at grisby.org
Wed Oct 15 16:16:39 BST 2008


On Tuesday 14 October, "Likun Yuan" wrote:

> Following Duncan’s instruction, I have built the CP1252 support into OmniORB
> 4.1.1. (I’d like to volunteer myself to build the other codesets tables after
> I made sure this one’s working properly. J)

I beat you to it :-)  omniORB 4.1.3 has all the Windows code sets, plus
all the ISO-8859 ones that were missing.

[...]
> omniORB:   nativeCharCodeSet = windows-1252

[...]
> 2. I have another Java ORB application, with the resolved IOR:
> 
> Type ID: "IDL:ConnectionBroker/CBFunctions:1.0"
> Profiles:
> 1. IIOP 1.2 NPS00004 12356 ".......
> ....................RootPOA.....CB_poa..............."
>             TAG_CODE_SETS char native code set: UTF-8
>                           char conversion code set: UTF-8
>                           wchar native code set: UTF-16
>                           wchar conversion code set: 0x05010001

This tells us that the Java ORB only knows about UTF-8 for char data.

> When the JAVA ORB sending the data to the OmniORB application, I was
> expecting the OmniORB application set the TCS to windows-1252 based on
> the NativeCharCodeSet configuration. But I actually got [UTF-8], the
> OmniORB log message as below.

TCS is the Transmission Code Set. It has to be something both ORBs
understand. Since the Java ORB doesn't understand windows-1252, it
chooses UTF-8, which both ends understand.

> 10/14/2008 16:06:07 4332:4108 [DEBUG] omniORBLog(): OmniORB log message:
> omniORB: Receive codeset service context and set TCS to (UTF-8,UTF-16)
> 
> Is there anything I can do to force the OmniORB to set the TCS to
> (windows-1252,UTF-16)? I can’t do it on the Java side, the JAVA ORB doesn’t
> support the windows-1252 codeset at all.

You can't use windows-1252 as the Transmission Code Set, but you _are_
using it as the Native Code Set. omniORB will translate string data to
and from UTF-8 for you. That's the whole point of the code set
negotiation and translation scheme.

Cheers,

Duncan.

-- 
 -- Duncan Grisby         --
  -- duncan at grisby.org     --
   -- http://www.grisby.org --



More information about the omniORB-list mailing list