Apache Harmony is retired at the Apache Software Foundation since Nov 16, 2011.

The information on these pages may be out of date, or may refer to resources that have moved or have been made read-only.
For more information please refer to the Apache Attic

DRL RMI Registry Service Provider for JNDI

DRL RMI Registry Service Provider for JNDI

  1. Revision History
  2. About This Document
    1. Purpose
    2. Intended Audience
    3. Documentation Conventions
  3. RMI Provider Overview
  4. RMI Provider in DRL
    1. About
    2. Environment Properties
    3. RMI URLs
    4. Binding Registry Contexts and Remote Objects
  5. References

Revision History

Version Version Information Date
Initial version Vasily Zakharov, Nadya Morozova: document created. March 23, 2006
Formatting update Nadya Morozova: document created. September 21, 2006
Linking update Sveta Konovalova: incorporating in website, removing disclaimer. March 2007

About This Document


This document describes the functionality of the DRL RMI [2] Registry Service Provider for JNDI [1]. The document gives details on the provider design.

Intended Audience

The target audience for the document includes a wide community of engineers interested in using the RMI registry in their JNDI applications and in further work with the product to contribute to its development. The document assumes that readers are familiar with RMI, JNDI and the Java programming language.

Documentation Conventions

This document uses the unified conventions for the DRL documentation kit.

Back to Top

RMI Provider Overview

The RMI registry context, based on a registry location, and the RMI Registry Service Provider allow JNDI applications to access remote objects bound in the RMI registry, as described in the Java* RMI Specification [2].

The provider supplies JNDI with the same essential functionality as the java.rmi.Naming class does.

Back to Top

RMI Provider in DRL


The DRL RMI Service Provider is an independent implementation of the RMI Service Provider for JNDI. You can also consult additional information resources on RMI [2], RMI Service Provider [3] and JNDI in general [1].

The provider can store java.rmi.Remote, javax.naming.Reference and javax.naming.Referenceable objects. The RMI registry context and references to individual RMI objects can be bound into other JNDI contexts. The DRL provider does not support binding other contexts into the RMI registry, so that you cannot address objects in this context using composite name requests through the registry.

Back to Top

Environment Properties

In addition to the general properties [3], the DRL RMI Registry Provider uses the following JNDI environment properties:


Specifies the RMI registry service provider class name as the initial context factory to be used by the javax.naming.InitialContext class.



Use this property with the java.naming.provider.url property, which specifies the location of the RMI registry for the usage of the initial context. Otherwise, the initial context you created can only resolve complete RMI URLs.

Can contain the name of a class implementing the java.rmi.server.RMIClientSocketFactory interface. The instance of this class is passed to the java.rmi.registry.LocateRegistry.getRegistry() method.

Back to Top


The URL context factory, org.apache.harmony.jndi.provider.rmi.rmiURLContextFactory, enables passing RMI URLs as names to the JNDI initial context.

Back to Top

Binding Registry Contexts and Remote Objects

The class org.apache.harmony.jndi.provider.rmi.registry.RegistryContextFactory implements the javax.naming.spi.ObjectFactory interface and provides converting registry references into the corresponding registry contexts or remote objects.

Back to Top


[1] Sun about JNDI, http://java.sun.com/j2se/1.5.0/docs/guide/jndi/

[2] RMI Specification, http://java.sun.com/j2se/1.5.0/docs/guide/rmi/spec/rmiTOC.html

[3] Sun's RMI Provider, http://java.sun.com/j2se/1.5.0/docs/guide/jndi/jndi-rmi.html

Back to Top

* Other brands and names are the property of their respective owners.