[omniORB] omniINSPOA and wide character sets problem

Duncan Grisby duncan at grisby.org
Fri Feb 20 16:58:13 GMT 2004


On Monday 16 February, Cameron Rochester wrote:

> I am using the omniINSPOA to activate a servant that I need to contact
> without a Naming Service. I believe it is called "bootstrapping" by some...
> Let me give it an id of "fred" for the purposes of this example. Everything
> is working fine until we started converting our apps to use wide strings for
> multi-language support.
> 
> The problem, as I see it, is objects activated with the omniINSPOA do not
> seem to have any character set information encoded on the server side. When
> making a request on "fred" only the default character set (8859_1) is set by
> the clientSendRequest interceptor
> "setCodeSetServiceContext(omniInterceptors::clientSendRequest_T::info_T&
> info)"

The problem is not with the omniINSPOA. The issue is that code set
information is encoded in IORs. You're using a corbaloc URI, so you
don't have an IOR. The client therefore has no way to know what
codesets the server supports. omniORB is quite correct in throwing the
BAD_PARAM_WCharTCSNotKnown.

The solution is to use the corbaloc mechanism just to bootstrap by
returning another object reference. That way the client will receive
the codeset information and everything will work fine.

Cheers,

Duncan.

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



More information about the omniORB-list mailing list