I'm working on an application that uses remote services which are acquired using JNDI. I would like to hide the use of JNDI, by exposing these services through the OSGi service registry. For the moment, I'm doing this by asking for a list of services when the platform starts, and registering service factories for all of them. However this ignores the fact that remote services might disappear or be added, which is one of the nice features o OSGi.
What would be a better way of handling this ? Ideally, I would like to just try to get a service from the registry, and have the framework (or some bundle) try to look it up through JNDI behind the scenes.