Aspect-Oriented Smart Proxies in Java RMI
MetadataShow full item record
Java's Remote Method Invocation (RMI) architecture allows distributed applications to be written in Java. Clients can communicate with a server via a local proxy object that hides the network and server implementation details. This loosely coupled architecture makes it difficult for client-side enhancements, such as method caching and validation, to obtain useful information about server state and implementation. Statically-generated custom proxies can provide a limited solution, but are troublesome to deploy and cannot change dynamically at runtime. This thesis presents a framework for Java RMI smart proxies using a distributed aspectoriented platform. The framework allows server-controlled dynamic changes to Java RMI proxy objects on the client, without requiring changes to the client application code or development cycle. The benefits of this framework are demonstrated with three practical examples: method caching, client-side input validation, and load balancing.