|
From: <jue...@we...> - 2004-10-26 18:45:56
|
Hi Venkat, =20 First of all, thanks for your kinds words on Sprign :-) =20 Regarding ICE: You should be able to treat just it like any other of the = remoting protocols that Spring supports. As a starting point, have a = look at how Spring's Hessian support (for Caucho's HTTP-based Hessian = protocol) is implemented. =20 Our usual pattern for the client side is to implement the actual = invocation handling in an interceptor base class (like = HessianClientInterceptor) and derive a convenient FactoryBean from it = (like HessianProxyFactoryBean). The interceptor basically takes the = local method invocation and converts it to a corresponding remote = invocation, in turn converting the remote invocation result back to a = local invocation result. What's exposed to the caller is usually a plain = Java (i.e. non-RMI) interface. =20 For a comparison, you could also have a look at Spring's RMI support, = although that one is more complicated: It can work with either an RMI = interface or a non-RMI business interface, so has quite a bit of case = handling inside. The internals of the Hessian support are significantly = simpler. =20 Of special concern is the exception handling. The current Spring = remoting support usually lets all exceptions thrown by the target = service through as-is, according to the business interface contract. The = interesting part is how to handle remote access failure: In Spring, all = such exceptions are converted to the generic = org.springframework.remoting.RemoteAccessException. From the point of = view of the caller, it always gets a RemoteAccessException, no matter = which protocol is used underneath. =20 So the main responsibilities of the client interceptor respectively = proxy factory bean are to delegate the call to the corresponding target = service, and to correctly handle exceptions thrown. The current support = classes should give a good indication on how to achieve this properly. =20 Keep us up-to-date on how things are progressing at the ICE front! =20 Regards, Juergen =20 ________________________________ Von: spr...@li... im Auftrag = von Venkat Sonnathi Gesendet: Di 26.10.2004 20:19 An: Spr...@li... Betreff: [Springframework-developer] Hi Hi, Thanks for the cool framework. I am still new to it. I like Dependency Setter Injection for JNDI lookup for DataSource and SLSB. We are contemplating on using ICE (http://www.zeroc.com) for distribution, as = it supports versioning, cross platform, location transparency (no remote vs local interfaces) and cool asynchronous programming model. Naturally = every one is concerned and want the dependencies on it to be minimal. I would = like to instantiate stubs to ICE remote services via Spring. What's the best = way to start/look at what code? Thanks in advance, --Venkat. ------------------------------------------------------- This SF.Net email is sponsored by: Sybase ASE Linux Express Edition - download now for FREE LinuxWorld Reader's Choice Award Winner for best database on Linux. http://ads.osdn.com/?ad_id=3D5588&alloc_id=3D12065&op=3Dclick _______________________________________________ Springframework-developer mailing list Spr...@li... https://lists.sourceforge.net/lists/listinfo/springframework-developer |