why do you need a connection factory on the server?
Here is a Sun's Applying the Factory Pattern to RMI tutorial. In addition to all the benefits and transparency, you get a bonus -- each object created by the factory uniquely identifies the client, so you can use it for lock/unlock. There are alternative approaches, of course, but RMI factory seems to be the most simple and logical. Eugene.