[jacorb-developer] TAO_IMR ImR_Client ImplRepo.idl is different between JacORB and TAO

Timothy Astle timothy.astle at caris.com
Wed Nov 25 21:10:54 CET 2015


I just observed something and I wanted to solicit some thoughts.

A while ago, we abandoned generating our own client stubs generated from 
the ImplRepo.idl since JacORB now provides these stubs.  (We thought 
that was quite nice.)  The client uses JacORB 3.7.

Our server uses TAO, and has upgraded to use 2.2a_p6 distributed by OCI.

We observed a problem calling the list operation from our Java client.  
It appears that the IDLs are now different between the two libraries.  
I'll point out the difference in the interface.

https://github.com/DOCGroup/ATCD/blob/master/TAO/tao/ImR_Client/ImplRepo.idl

     /// Returns at most @a how_many servers in @a server_list.  If there
     /// are additional servers, they can be received through the
     /// @a server_iterator.  If there are no more servers, then
     /// @a server_iterator is null.
     /// If @a how_many == 0, then returns all servers.
     /// If @a determine_active_status is true then
     /// set ServerInformation::active_status attribute by determining
     /// if the server is alive.
     void list (in unsigned long how_many,
                in boolean determine_active_status,
                out ServerInformationList server_list,
                out ServerInformationIterator server_iterator);

https://github.com/JacORB/JacORB/blob/master/idl/tao_imr/ImplRepo.idl

     /// Returns at most <how_many> servers in <server_list>.  If there
     /// are additional servers, they can be received through the
     /// <server_iterator>.  If there are no more servers, then
     /// <server_iterator> is null.
     /// If how_many == 0, then returns all servers.
     void list (in unsigned long how_many,
                out ServerInformationList server_list,
                out ServerInformationIterator server_iterator);

I'm pretty sure interfacing to an Implementation Repository is not a 
part of the CORBA specification (from what little I recall from that 
large book).

I'm just curious as to what we should do?  Is there a plan for JacORB to 
somehow manage the versions of the ImplRepo.idl for all of the changes 
made in TAO?  Is there some plan to try to maintain some type of 
compatibility for this interface between projects?  Or is did we make a 
mistake by using the generated stubs provided by JacORB?

I'm pretty sure I've seen the same committers working in both projects, 
so I'd appreciate your thoughts.

Thanks for your time,


Tim


More information about the jacorb-developer mailing list