[omniORB] Deactivating/reactivating servant vs IOR.

Frederic Prin frederic.prin at silvaco.com
Tue Jun 15 16:57:45 BST 2004


Hi all,

A simple question:

- Do a servant IOR change when deactivating then reactivating it ?



Suppose you have a servant activated with a client connected to it. The
client previously locate the servant using the NameService and narrow
the IOR to a a proxy object (all works fine).
The server decide to deactivate the servant 

	PortableServer::ObjectId_var id =
root_poa->servant_to_id(mServant); 
	root_poa->deactivate_object(id);

If the clients make a call to the servant it will catch a
OBJECT_NOT_EXIST exception; that is fine too.

So now, the server reactivate the (same) servant:

	root_poa->activate_object(mServant);

And the client tries again to make a call to this servant and still
catch a  OBJECT_NOT_EXIST  exception.

If I reconnect from scratch

	CORBA::Object_ptr p = m_NSRootContext->resolve(nsName);
	MyInterfaceObj = MyInterface::_narrow(p);


It works !

So is it possible to reinitialize an existing client proxy obj to a
reactivated servant channel without having to reconnect using the IOR
 ?

Client side, I try to re _narrow  MyInterfaceObj  but it didn't work.


Thanks for any idea.

Fred

            
                              (
     Frédéric Prin          )
     Senior Software Engineer /
          S I L V A C O      (
     Grenoble REsearch CEnter \
     Tel 04 56 38 10 33        )
    __________________________/___
   /__/__/__/__/__/__/__/__/__/__/
  /__/__/__/__/__/__/__/__/_____/
 /__/__/__/__/__/__/__/__/__/__/

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.omniorb-support.com/pipermail/omniorb-list/attachments/20040615/20bf296b/attachment.htm


More information about the omniORB-list mailing list