[Ace-users] Re: [ciao-users] Corba 2.x --> Corba 3.x
interoperability ?
Douglas C. Schmidt
schmidt at dre.vanderbilt.edu
Tue Aug 28 09:55:38 CDT 2007
Hi Alessio,
I don't think we have any experience using Orbit2, so you may need to either
contact those folks for help or switch to TAO.
thanks,
Doug
> I tried to do what suggested, but either I haven't yet found the way out of the maze, or something does not work as
> expected.
>
> I've used Orbit2 as Corba 2.4 implementation, and I would like just to generate client stubs for a CCM Hello component.
>
> Assuming this is the Hello component equivalent interface:
>
> // -------------------------------------------------------------
> // Hello.idl
> interface Hello : Components::CCMObject {
> void sayHello();
> };
> // --------------------------------------------------------------
>
> assuming I have to add the directive #include <Components.idl> (CIAO's Components.idl file) at the top of the equivalent
> generated file, and assuming my Hello.idl file is (for simplicity)
> in the same directory of Components.idl, running the Orbit2 IDL compiler I have errors
> (increasing the debugging level there is no helpful output).
>
> I tried the same example with no success also positioning my Hello.idl file in Mico CCM distrubution, replacing the #
> include <Components.idl> with #include <CCM.idl> (because it's called like that in Mico CCM).
>
> Any suggestions? Sorry if my question seems obvious.
>
> Regards,
> Alessio Pace.
>
> On 8/27/07, William R. Otte <wotte at dre.vanderbilt.edu> wrote:
>
> Hi Alessio -
>
> On Aug 27, 2007, at 3:41 PM, Alessio Pace wrote:
> >
> > I'm pretty new to Corba and I would like to know if/how I can write a
> > Corba 2.x client (so, component *unaware*) which calls a dumb
> > interface method of a Corba 3.x component.
> >
>
> Yes, this is possible, I have done it before, using the non-CCM aware
> OmiOrb Python to communicate with CIAO components.
>
> > Theoretically, one having the equivalent IDL 2.x, could pass them to
> > the client, and let it generate stubs/skeletons and write user code
> > which would get a registered
> >
>
> Exactly.
>
> > But, my questions are the following:
> > 1) how am I supposed to, from a non CCM capable Corba implementation,
> > generate stubs/skeletons for interfaces whose parent types are
> > Components::CCMObject??
>
> You will need to generate stubs for Components.idl in your non-ccm
> aware CORBA implementation. This file just has vanilla CORBA 2.x
> interfaces, so your not ccm aware ORB should have no trouble
> generating code.
>
> >
> > 2) what about all the "local" interface for component<-->container
> > calls??
>
> You shouldn't have to worry about these on the non-ccm aware side,
> they are for the interaction between the component executor and the
> component servant. You, as a client, call the external interface
> (actually implemented in the servant), and the servant turns around
> in invokes the executor (implementation, derived from the local
> interface). I suggest you use a tool such as tao_idl3_to_idl2 (found
> in CIAO_ROOT/tools/IDL3_to_IDL2) to generate these equivalent
> interfaces, as it won't also generate the executor IDL (the local
> interfaces).
>
> >
> > 3) component homes: what about them also??
> >
>
> I am not quite sure I understand your question..... component homes
> have their own IDL3->IDL2 mapping..... do you have a more specific
> question?
>
> hth,
> /-Will
>
> _______________________________________________
> ciao-users mailing list
> ciao-users at mail.cse.wustl.edu
> http://mail.cse.wustl.edu/mailman/listinfo/ciao-users
>
> --
> Alessio Pace.
>
> _______________________________________________
> ciao-users mailing list
> ciao-users at mail.cse.wustl.edu
> http://mail.cse.wustl.edu/mailman/listinfo/ciao-users
More information about the Ace-users
mailing list