The architectural flaw that David pointed out is that the container knew about the JNDI names. Since we split the container and the deployment apart in 2.2, the container is no longer aware of the JNDI names or the TSS stuff. I don't think this addresses all of David's concerns, but it is definitely an improvement.

Anyway, I think I have a simple idea to address naming. If we use naming protocols to designate the naming type, we should be able to have a single string for all existing naming systems. For example:

<jndi-names>
  ejbs/foo
  rmi://foo
  openejb://ejbs/foo
  cos-naming://foo-tss
  jaxr://foo
</jndi-names>

To process this we can either have actual contexts bound under those names that handle the binding correctly (this is how rmi naming works), or we can have a JNDI binding GBeans for the specific protocols that ignore the unknown protocols.

The nice thing about this solution is it doesn't require any special knowledge on our users' part.

-dain

Reply via email to