[omniORB] omniORB and TAO

Duncan Grisby duncan at grisby.org
Fri Jun 17 14:49:50 BST 2005


On Friday 17 June, =?Windows-1251?Q?=C0=ED=E4=F0=E5=E9_=CF=F3=F7=E8=ED?= wrote:

> I've compiled idl with -Wbfactories.

That registers factories for the Python side. I wanted to make sure you
have factories registered on the TAO side.

> May be it's my fault, but i try to patch pyValueType.cc
> "static void real_marshalPyObjectValue(cdrValueChunkStream& stream, PyObject*
> d_o, PyObject* a_o)"
> and set derived=1.

That should indeed cause omniORBpy to always send at least one repoid,
which might make TAO happier.

> op1 method on TAO server can't properly handle recieved arguments
> despite of lack of MARSHALL exception.
> 
> First argument is ok, but the others are garbage.

What exactly does TAO do?  In what way are the others garbage?

One thought is that perhaps TAO doesn't properly support the chunked
valuetype encoding. omniORBpy always uses chunking when it sends values,
since it's awkward to decide whether it's necessary or not. You could
try an experiment of sending a value from C++ omniORB to TAO, since that
only uses chunking when it really has to.

Cheers,

Duncan.

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



More information about the omniORB-list mailing list