Is it possible in Java to have a Java interface defintion in my classpath but not the corresponding implementation? Let me explain what I mean:

Let's suppose I use JNDI as a mechanism to access a Factory object. Let's assume I define a Factory interface and include it in the classpath of all my PC clients, but I do not include the concrete implementation class in my PC classpath.

So on the central naming server, I create the class implementation of the interface and I bind it to a name in my JNDI server.

Now from a seperate PC whose classpath has the interface definition but not the implementation looks up the JNDI server for this factory.

Will this work? Does the actual implementation get downloaded to the client PC with the object somehow?