Re: reconnection to (TAO)servers
shectman1 <[email protected]> Mon, 02 Feb 2015 18:27:51 -0800
| Newsgroups | gmane.comp.corba.jacorb.devel |
|---|---|
| Message-ID | <[email protected]> |
If you can get this in time, I would like to recall my previous message, sent moments ago. Thank you. On 02/02/2015 06:25 PM, shectman1 wrote: > I am in the process of trying to update from JacORB 2.3.1 and TAO 6.0.1 to > JacORB 3.5 and TAO 6.3.1, and have a question about some code I wrote some time > ago (probably under JacORB 2.3.1 and TAO 5.7). > > We use TAO/C++ for our servers, and JacORB for our gui(s). > > For a variety of reasons, our servers can exit while the gui(s) are still > running (everything from bugs to timeouts). In addition our servers let > TAO select the ports when servers are run (historical artifact from when > we were using ORBIX). When a server restarts, its pretty rare for it to be > started with the same ports as the previous invocation. > > This means that every IOR in jacorb that pointed to the server that restarted, > is no longer valid, which tended to crash the gui(s) after trying to reconnect to > the server, but using a now out-dated port. JacORB would try several times to > reconnect to the server, but since it always used an now obsolete port, it would > of course never succeed. If there was a way for JacORB to > trigger a restart of the server, and remap the ports, I was never aware of it. > > Several years ago, I implemented a JacORB based Client Interceptor, that caught > the error of the IOR with a now bad port, cracked the IOR for the server name, > called the TAO implementation repository to restart the server, looked up the > new service to get its port number, put the new port number in the IOR, and > issued a forward request. And by magic, it all worked. Thankfully, the worst part > was cracking the IOR, and there was a jar to support that. Its not all that much code > actually, and significantly improved our system. > > Stick with this just a bit more, I'm almost there. > > In order for the Interceptor to talk to the TAO IMR, which has/had a different > interface than the JacORB IMR, I had to generate an > ImplementationRepository.idl file for the JacORB jidl compiler to generate > the java to talk to the TAO implementation repository. For that I was able to use > ImplRepo.pidl and ServerObject.pidl from TAO. Under TAO 6.3.1 those files no longer exist, > nor have I found equivalents (yet). > > So finally - the question. Does JacORB 3.5 have anything internally these days that > will detect when an IOR is no longer connected to the server, and tries to reconnect, > but detects the potential change in port numbers for the server (when the server is running > under TAO)? > > > > Thank you. > -- Robert M. Shectman National Atmospheric Release Advisory Center (NARAC) Lawrence Livermore National Laboratory [email protected] (925)423-6714 _______________________________________________ jacorb-developer maillist - [email protected] https://lists.spline.inf.fu-berlin.de/mailman/listinfo/jacorb-developer