Re: [tao-users] Communicating w/ ORBit2



On Tue, 2005-01-18 at 15:28 -0500, Nick_Gianakas sybari com wrote:
> Does anyone have any experience with a TAO client calling into an
> ORBit2 
> (C binding) servant?
> 
> I have a relatively simple interface with the following results:
> 
> +----------+--------------+
> |          |  Receiver    |
> |          +-----+--------+
> | Sender   | TAO | ORBit2 |
> +----------+-----+--------+
> | TAO      |  Y  |   N    |
> | ORBit2   |  Y  |   Y    |
> +----------+-----+--------+
> 
> Client and server are running on the same machine.  The TAO client
> can 
> resolve and narrow the ORBit servant, but trying to invoke an
> interface 
> method yields a TRANSIENT error.
> 
> I'm open to any suggestions.

I got it. Information for the uninitiated: I send Nick a sample client
based on TAO and a sample server based on ORBit2 (current CVS). The
server implemented this simple IDL:

interface IPing {
	void ping();
};

The server would write "PING!" to stdout when invoked.

The sample client called _non_existent() on the server object reference
and would always fail with an exception, mostly BAD_OPERATION. So I
removed that check from the client. Invoking the server with:

./ping_server

would nonetheless always give a TRANSIENT. The fix was to do:

./ping_server --ORBIIOPIPv4=1

So we are left with the issue of _non_existent() raising a BAD_OPERATION
in ORBit2. That one goes onto my TODO list to process when I get the
time to look at it.

[Nick] Please change the fprintf() in impl_IPing_ping() into a g_print()
to see the "PING!"s immediately.


Best regards,
  jules




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]