Practical AOP (Part 1): Transparent remoting with AOP and EJBs