[omniORB] Possibility of having a CORBA client/server without a nameservice .

Vinaya Kavathekar vinaya@marathontechnologies.com
Thu, 1 Nov 2001 16:36:23 -0500


Hello all,

I have a heterogeneous environment where the server is a C++ application
using omniORB and the client is a Java app using Java ORB. I also have a C++
client that uses omniORB.  We want to minimize the number of applications
that are started with our server and hence would like to eliminate
dependencies on the nameservice. I have been able to do so by using
omniINSPOA within the applications that use omniORB, but am not sure what is
required (or if it is even possible) to get the same effect from the Java
client. 

The three ways of achieving interoperability were 
1) Use bootstrap service: I haven't tried this approach, but I'm assuming it
will work. Yet, it requires another application and I'm resistant on going
this route.
2) Tried using the following code to resolve initial reference from the Java
client, but it failed. (As expected, since they are different orbs.) 
	String obj_string = "corbaloc::localhost:5555/" + objName;
	org.omg.CORBA.Object obj = orb.string_to_object(obj_string);

	objMgr = CORHelloHelper.narrow(obj);
   I'd appreciate some help with this. 
3) Share an initial IOR between client and server. 
	This is extremely difficult since we do not have a common
file-system. That means, there must be some initial bootstrapping through
sockets or such, totally defeating the purpose of using CORBA. 

Am I really stuck with using the nameservice? Or is there another, albeit
non-standard, option?

Thanks for any help,
Vinaya