# DomainRuntimeServiceMBean

Overview | Related MBeans | Attributes | Operations

## Overview

Provides a common access point for navigating to all runtime and configuration MBeans in the domain as well as to MBeans that provide domain-wide services (such as controlling and monitoring the life cycles of servers and message-driven EJBs and coordinating the migration of migratable services).

This MBean is available only on the Administration Server.

The `javax.management.ObjectName` of this MBean is "`com.bea:Name=DomainRuntimeService,Type=weblogic.management.mbeanservers.domainruntime.DomainRuntimeServiceMBean`".

This is the only object name that a JMX client needs to navigate the hierarchy available from this MBean.

Note:

  If your JMX client uses the Domain Runtime MBean Server to access runtime or configuration MBeans by constructing object names (instead of by using this `DomainRuntimeServiceMBean` to navigate the MBean hierarchy), the client must add a `Location=servername` key property to the MBean object name. The MBean server uses this key property to route the JMX request to the appropriate WebLogic Server instance. If your client uses the `DomainRuntimeServiceMBean` to navigate the MBean hierarchy, the object names that it obtains automatically contain the location key property.

To start navigating, a JMX client invokes the `javax.management.MBeanServerConnection.getAttribute()` method and passes the following as parameters:

- The `ObjectName` of this service MBean

- A `String` representation for the name of an attribute in this MBean that contains the root of an MBean hierarchy

This method call returns the `ObjectName` for the root MBean. To access MBeans below the root, the JMX client passes the root MBean's `ObjectName` and the name of a root MBean attribute that contains a child MBean to the `MBeanServerConnection.getAttribute()` method. This method call returns the `ObjectName` of the child MBean.

For example:
`ObjectName drs = new ObjectName("com.bea:Name=DomainRuntimeService,Type=weblogic.management.mbeanservers.domainruntime.DomainRuntimeServiceMBean");`
`// Get the ObjectName of the domain's DomainMBean by getting the value
// of the DomainRuntimeServiceMBean DomainConfiguration attribute
ObjectName domainconfig =
(ObjectName) MBeanServerConnection.getAttribute(drs, "DomainConfiguration");
// Get the ObjectNames for all ServerMBeans in the domain by getting
// the value of the DomainMBean Servers attribute
ObjectName[] servers =
(ObjectName[]) MBeanServerConnection.getAttribute(domainconfig, "Servers");`

Since | 9.0.0.0
Fully Qualified Interface Name | If you use the `getMBeanInfo` operation in MBeanTypeServiceMBean, supply the following value as this MBean's fully qualified interface name: `weblogic.management.mbeanservers.domainruntime.DomainRuntimeServiceMBean`
Factory Methods | No factory methods. Instances of this MBean are created automatically.
Access Points Inherited from Service | Because this MBean extends or implements Service, you can also access this MBean by retrieving Services. The following attributes contain Services and its subtypes:
RuntimeServiceMBean.Services |

## Related MBeans

This section describes attributes that provide access to other MBeans. For more information about the MBean hierarchy, refer to WebLogic Server MBean Data Model.

DomainConfiguration DomainPending DomainRuntime | ServerRuntimes

### DomainConfiguration

Contains the active `DomainMBean` for the current WebLogic Server domain.

Get this MBean to learn about the active configuration of all servers and resources in the domain. Any command line options that were used to start servers in this domain override the values in this `DomainMBean`. For example, if you used a command line option to override a server's listen port, the `ServerMBean` that you navigate to from this `DomainMBean` will show the value persisted in the `config.xml` file; it will not show the value that was passed in the command line option.

Note:

  The `DomainMBean` that can be accessed from this (`DomainRuntimeServiceMBean`) MBean attribute represents the active configuration of the domain and cannot be edited. The pending `DomainMBean`, which can be edited, is returned by the startEdit operation in the`ConfigurationManagerMBean`.

For more information, see:

- Command Line Configuration Options
- findDomainConfiguration
- findServerConfiguration

Factory Methods | No explicit creator method. The child shares the lifecycle of its parent.
Privileges | Read only
Type | DomainMBean
Relationship type: | Containment.

### DomainPending

Contains a read-only version of the pending `DomainMBean` for the current WebLogic Server domain. You cannot use this MBean to modify a domain's configuration.

If you want to modify a domain's configuration, use the startEdit operation in the`ConfigurationManagerMBean` to start an edit session. The `startEdit` operation returns an editable `DomainMBean`.

Get this read-only version of the MBean to learn about the pending configuration of all servers and resources in the domain.

Factory Methods | No explicit creator method. The child shares the lifecycle of its parent.
Privileges | Read only
Type | DomainMBean
Relationship type: | Containment.

### DomainRuntime

Contains the `DomainRuntimeMBean` for the current WebLogic Server domain.

This MBean provides access to the special service interfaces that exist only on the Administration Server and provide life cycle control over the domain.

Factory Methods | No explicit creator method. The child shares the lifecycle of its parent.
Privileges | Read only
Type | DomainRuntimeMBean
Relationship type: | Containment.

### ServerRuntimes

Contains all `ServerRuntimeMBean` instances on all servers in the domain.

Get these MBeans to learn about the current runtime statistics for all server instances in the domain.

Lookup Operation | `lookupServerRuntime(String name)` Returns a `javax.management.ObjectName` for the instance of `ServerRuntimeMBean` named `name`.
Privileges | Read only
Type | ServerRuntimeMBean[]
Relationship type: | Reference.

## Attributes

This section describes the following attributes:

Name ParentService ServerName | Type

### Name

A unique key that WebLogic Server generates to identify the current instance of this MBean type.

For a singleton, such as `DomainRuntimeServiceMBean`, this key is often just the bean's short class name.

Privileges | Read only
Type | java.lang.String

### ParentService

The MBean that created the current MBean instance.

In the data model for WebLogic Server MBeans, an MBean that creates another MBean is called a parent. MBeans at the top of the hierarchy have no parents.

Privileges | Read only
Type | weblogic.management.provider.Service

### ServerName

The name of this WebLogic Server instance as defined in the domain configuration.

Privileges | Read only
Type | java.lang.String

### Type

The MBean type for this instance. This is useful for MBean types that support multiple intances, such as `ActivationTaskMBean`.

Privileges | Read only
Type | java.lang.String

## Operations

This section describes the following operations:

findConfiguration findDomainConfiguration findRuntime findRuntimes | findServerConfiguration findService getServices

### findConfiguration

Enables a JMX client to retrieve configuration data for a specific instance of a resource. To use this operation, a JMX client passes a single runtime MBean and the operation returns the active configuration MBean for the resource.

For example, given the `JMSServerRuntimeMBean` for a JMS server named "JS1" on the current server instance, this operation returns the active `JMSServerMBean` for "JS1."

Operation Name | `"findConfiguration"`
Parameters | `Object [] { runtimeMBean }` where: `runtimeMBean` is an object of type `weblogic.management.runtime.RuntimeMBean` that specifies: runtimeMBean
Signature | `String [] { "weblogic.management.runtime.RuntimeMBean" }`
Returns | `DescriptorBean`

### findDomainConfiguration

Returns the active `DomainMBean` for the specified server.

Get this MBean to learn about the current configuration of the server, including any values that were overridden by the server's startup command. For example, if you used a command line option to override a server's listen port, the `ServerMBean` that you navigate to from this `DomainMBean` will show the value that was passed in the command line option.

Note:

  The pending `DomainMBean`, which can be edited, is available only from the Edit MBean Server and its `EditServiceMBean`. The `DomainMBean` that can be accessed from this (`DomainRuntimeServiceMBean`) MBean attribute represents the active configuration of the specified server and cannot be edited.

For more information, see:

- Command Line Configuration Options

Operation Name | `"findDomainConfiguration"`
Parameters | `Object [] { }` where:
Signature | `String [] { "java.lang.String" }`
Returns | `DomainMBean`

### findRuntime

Enables a JMX client to retrieve monitoring statistics for a specific resource on a specific server. To use this operation, a JMX client passes a single configuration MBean and the name of a server instance. The operation returns the corresponding runtime MBean for the resource on the named server, assuming that the resource has been targeted or deployed to the server.

For example, given the `JMSServerMBean` for a JMS server named "JS1" on a server instance named "ManagedServer1," this operation returns the `JMSServerRuntimeMBean` for "JS1" on "ManagedServer1."

Operation Name | `"findRuntime"`
Parameters | `Object [] { configurationMBean, serverName }` where: `configurationMBean` is an object of type `weblogic.descriptor.DescriptorBean` that specifies: configurationMBean `serverName` is an object of type `java.lang.String` that specifies: that owns that runtime mbean.
Signature | `String [] { "weblogic.descriptor.DescriptorBean", "java.lang.String" }`
Returns | `RuntimeMBean`

### findRuntimes

Enables a JMX client to retrieve monitoring statistics for all instances of a specific resource on all servers in a domain. To use this operation, a JMX client passes a single configuration MBean and the operation returns runtime MBeans for this resource from all servers in the domain.

For example, a JMX client connects to the Domain Runtime MBean server and gets the `JMSServerMBean` for a JMS server named "JS1." The JMX client then invokes this operation and the operation determines the active server instances on which the "JS1" JMS server has been targeted. It then returns all of the `JMSServerRuntimeMBean`s for "JS1" from all servers in the domain.

Operation Name | `"findRuntimes"`
Parameters | `Object [] { configurationMBean }` where: `configurationMBean` is an object of type `weblogic.descriptor.DescriptorBean` that specifies: configurationMBean
Signature | `String [] { "weblogic.descriptor.DescriptorBean" }`
Returns | `class`

### findServerConfiguration

Returns the active `ServerMBean` for the specified server.

Get this MBean to learn about the current configuration of the server, including any values that were overridden by the server's startup command. For example, if you used a command line option to override a server's listen port, this `ServerMBean` will show the value that was passed in the command line option.

Note:

  The pending `ServerMBean`, which can be edited, is available only from the Edit MBean Server and its `EditServiceMBean`. The `ServerMBean` that can be accessed from this (`DomainRuntimeServiceMBean`) MBean attribute represents the active configuration of the specified server and cannot be edited.

For more information, see:

- Command Line Configuration Options

Operation Name | `"findServerConfiguration"`
Parameters | `Object [] { }` where:
Signature | `String [] { "java.lang.String" }`
Returns | `ServerMBean`

### findService

Returns the Service on the specified Server or in the primary MBeanServer if the location is not specified.

Operation Name | `"findService"`
Parameters | `Object [] { }` where:
Signature | `String [] { "java.lang.String", "java.lang.String", "java.lang.String" }`
Returns | `Service`

### getServices

Returns all the services that do not have a parent i.e all the root services

Operation Name | `"getServices"`
Parameters | `Object [] { serverName }` where: `serverName` is an object of type `java.lang.String` that specifies: String
Signature | `String [] { "java.lang.String" }`
Returns | `class`