This is a remoting detector for the remoting package which uses a JNDI server to maintain the registeries for remote invoker servers (stored as Detection messages). This detector is intended to be used in conjuntion with an external JNDI server that is already running. This is done by passing all the information needed to connect to the remote JNDI server via the setter methods. This can also be done within the jboss-service.xml. An example of the entry is as follows:
<mbean code="org.jboss.remoting.detection.jndi.JNDIDetector" name="jboss.remoting:service=Detector,transport=jndi">
<attribute name="Port">5555</attribute>
<attribute name="Host">foo.bar.com</attribute>
<attribute name="ContextFactory">org.jnp.interfaces.NamingContextFactory</attribute>
<attribute name="URLPackage">org.jboss.naming:org.jnp.interfaces</attribute>
</mbean>
Note: The above xml is for the JBoss JNP JNDI server, and has not be tested (just an example).
Be aware that just because this detector is stopped (and the entry removed from the JNDI server) remote JNDIDetectors may not recognize that the invoker servers are not available. This is because once remote invoker servers (connectors) are detected, they will be pinged directly to determine if they are no longer available. However, no new JNDIDetectors will detect your server once stopped. Also, please note that currently the detection registries are bound at the root context and not a sub context (which is on the todo list, but you know how that goes).
Important to also note that if any of the above attributes are set once the detector has started, they will not be used in connecting to the JNDI server until the detector is stopped and re-started (they do not change the JNDI server connection dynamically).
@author Tom Elrod