Hi Duncan, Igor<br><br>Thanks for you suggestions.<br><br>@Duncan<br>I tried your suggestions. <br>I started my server with -ORBendPoint option. Run my client got a reference for server from naming service.<br>When I restarted the server again I am getting the following error <br>
<br>$ build/Server.exe -ORBInitRef NameService=corbaname::localhost -ORBendPoint giop:tcp:localhost:2810<br>omniORB: Failed to bind to address 127.0.0.1 port 2810. Address in use?<br>omniORB: Error: Unable to create an endpoint of this description: giop:tcp:localhost:2810<br>
Caught CORBA::INITIALIZE<br><br>It is not able rebind to the port again. Whether I have to do anything in windows for rebinding the port.<br><br>Also I tried testing persistent_objref example in omniORB source code. I redirected the output to a file and run the eg2_clt.exe with IOR as argument first time it is working fine. when I restart the server(using ctrl+c) client gives<br>
Caught a CORBA::OBJECT_NOT_EXIST error.<br><br>What I am doing wrong here? is this problem with my version of omniORB(my version is omniORB-4.1.3) or my assumption is wrong.<br><br>Thanks and regards<br>Srinath.D<br><br><br>
<br><br><br><div class="gmail_quote">On Thu, Oct 29, 2009 at 8:30 PM, Duncan Grisby <span dir="ltr"><<a href="mailto:duncan@grisby.org" target="_blank">duncan@grisby.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
On Thu, 2009-10-29 at 14:14 +0100, Igor Lautar wrote:<br>
<br>
[...]<br>
<div>> > Since Server POA is with PERSISTENT policy the reference of the object<br>
> > should be valid even server gets restarted. But when I restart the server<br>
> > and call a method with the same reference, I am getting the COMM_FAILURE<br>
> > exception.<br>
> ><br>
> > Have any one faced this error with omniorb ? or correct me if my<br>
> > understanding is wrong.<br>
><br>
> So you're trying to achieve that your IOR are not changing when service is<br>
> restarted?<br>
><br>
> The only way to do it with omniORB (others, correct me if I'm wrong) is to use<br>
> omniINSPOA. Actually, we use it in that way and there is no need for naming<br>
> service then (as corbaloc URI can be used instead).<br>
<br>
</div>omniINSPOA is an orthogonal thing to what Srinith is asking.<br>
<br>
If you use a PERSISTENT POA, and want its object references to survive<br>
restarts, you must also ensure it starts up with the same endPoints each<br>
time, by setting the endPoint parameter suitably. For example, you can<br>
make it always start listening on port 12345 by giving command line<br>
arguments -ORBendPoint giop:tcp::12345<br>
<br>
omniINSPOA allows you to create objects with simple string keys,<br>
allowing you to use simple corbaloc URIs to refer to persistent objects.<br>
If you do that, you probably also want to specify endPoints, otherwise<br>
the port number will change each time.<br>
<br>
Cheers,<br>
<br>
Duncan.<br>
<font color="#888888"><br>
--<br>
-- Duncan Grisby --<br>
-- <a href="mailto:duncan@grisby.org" target="_blank">duncan@grisby.org</a> --<br>
-- <a href="http://www.grisby.org" target="_blank">http://www.grisby.org</a> --<br>
<br>
<br>
</font></blockquote></div><br>