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: springframework-developer-admin@... im Auftrag =
von Venkat Sonnathi
Gesendet: Di 26.10.2004 20:19
An: Springframework-developer@...
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
Springframework-developer@...
https://lists.sourceforge.net/lists/listinfo/springframework-developer
|