<div>Hi,</div>
<div> </div>
<div><font>
<p>Below is the sequence of calls i make.</p>
<p>(1) o_ObjRef = rootContext-&gt;resolve(name);</p>
<p>This call is success as it is not throwing any exception.</p>
<p>(2)</p>
<p>try {</p>
<p>ServerReady_var l_readyObjRef = ServerReady::_narrow(o_ObjRef);</p>
<p>// Note: _is_nil call does not result in IPC</p>
<p>if (l_readyObjRef-&gt;_is_nil())</p>
<p>{</p>
<p>printf(&quot; sink w/ server _narrow returned NIL&quot;);</p>
<p></p>
<p>break;</p>
<p>}</p>
<p></p>
<p>omniORB::setClientCallTimeout(</p>
<p>l_readyObjRef,15);</p>
<p>if(l_readyObjRef-&gt;_remote_non_existent())</p>
<p>{</p>
<p>printf(&quot;\n _remote_non_existent returned true\n&quot;);</p>
<p>} </p>
<p>}</p>
<p>catch (...)</p>
<p>{</p>
<p>printf(&quot;\n _remote_non_existent() threw an exception\n&quot;);</p>
<p>}</p>
<p> </p>
<p> </p>
<p>Result of execution of this code is : &quot;_remote_non_existent() threw an exception&quot;</p>
<p>Below are my concerns</p>
<p>(a) What is the difference between resolve() and _remote_non_existent() ?</p>
<p>(b) After successfully getting the object reference by calling resolve() , why show we make call to remote_non_existent() ?</p>
<p>(c) By searching i got to the below info</p>
<p>_CORBA_Boolean _remote_non_existent();</p>
<p>1.199 + // Contacts to object implementation to determine whether it exists.</p>
<p>1.200 + // It is possible that the implementation is a local servant of course.</p>
<p>1.201 + // Returns 0 if the object exists, or 1 or throws OBJECT_NOT_EXIST if</p>
<p>1.202 + // not. May throw other system exceptions.</p>
<p>1.203 + // This function is thread-safe.</p>
<p>If Object was not existing, then resolve() it self should have thrown exception. but , it did not throw any exception Why?</p>
<p>Fact is that , Before this code gets executed.. Object is been registered with Naming Service.</p>
<p>Please help me understand  , what is happening.</p>
<p>Thanks,</p>
<p>Smitha</p></font></div>