Figure 1 illustrates the JAXR architecture. A JAXR client, which can be a standalone Java application or a container-based J2EE application, interacts with a registry through a JAXR provider that returns a Connection object representing a client session with a specific registry. Connection objects return a RegistryService object that is then used to obtain objects that act as managers to handle different aspects of communication with a registry. For example, a client looking to inquire about business contained in a registry can obtain a BusinessQueryManager that supports methods to search the registry based on various criteria. Similarly, a J2EE service provider can obtain a BusinessLifeCycleManager object to upload descriptions of its Web Services to the registry. Thus, once a user of JAXR obtains connection to a provider, communication with the underlying registry can commence.
Figure 1 The JAXR architectural framework.