[omniORB] Wide string problems talking to Visibroker 4.5

Stephen Crawley crawley@dstc.edu.au
Tue, 31 Jul 2001 15:26:10 +1000


Duncan,

It turns out that the problem was that I wasn't setting the property

  -Dvbroker.orb.enableVB4backcompat=false 

when I was starting my VBJ server.  [I thought I was, but my config
scripts had clobbered the setting :-(]

-- Steve

HERE'S THE EXPLANATION for other people who might come across this in 
the future.

By default, VBJ 4.5 uses a broken CDR encoding for wide-strings to
be compatible with earlier versions of Visibroker 4.x.  The Visi
4.5 Reference manual mentions this in Appendix B, and says that you
should set the property above to false to allow exchange of wide strings
with other vendors ORBs.

The symptom you will see if you forget to do this is that the server
will throw a CORBA::MARSHAL exception with the server side message (if you
have -Dvbroker.orb.warn=2) of "Wstring not terminated by NUL char"

I think "beware of the leopard" might have been more appropriate ...