Spec-Zone.ru › OpenJDK 24

Интерфейс MBeanServer

Все суперинтерфейсы:
MBeanServerConnection
Все известные дочерние интерфейсы:
MBeanServerForwarder
public interface MBeanServer extends MBeanServerConnection

Это интерфейс для управления MBean на стороне агента. Он содержит методы, необходимые для создания, регистрации и удаления MBean, а также методы доступа к зарегистрированным MBean. Это основной компонент инфраструктуры JMX.

Код пользователя обычно не реализует этот интерфейс. Вместо этого объект, реализующий этот интерфейс, получает с помощью одного из методов в классе MBeanServerFactory.

Каждый MBean, добавленный в сервер MBean, становится управляемым: его атрибуты и операции становятся удаленно доступными через подключенные к этому серверу MBean коннекторы/адаптеры. Объект Java не может быть зарегистрирован в сервере MBean, если он не является совместимым с JMX MBean.

При регистрации или удалении MBean в сервере MBean генерируется уведомление MBeanServerNotification. Чтобы зарегистрировать объект в качестве слушателя MBeanServerNotifications, необходимо вызвать метод сервера MBean addNotificationListener с ObjectName ObjectName класса MBeanServerDelegate. Этот ObjectName составляет:
JMImplementation:type=MBeanServerDelegate.

Методы MBeanServer и его подклассов могут вызывать исключение SecurityException, если реализация не разрешает доступ к базовому ресурсу.

С:
1.5

Краткое описание методов

Модификатор и тип Метод Описание
void addNotificationListener(ObjectName name, NotificationListener listener, NotificationFilter filter, Object handback)
Добавляет слушателя к зарегистрированному MBean.
void addNotificationListener(ObjectName name, ObjectName listener, NotificationFilter filter, Object handback)
Добавляет слушателя к зарегистрированному MBean.
ObjectInstance createMBean(String className, ObjectName name)
Инициализирует и регистрирует MBean в сервере MBean.
ObjectInstance createMBean(String className, ObjectName name, Object[] params, String[] signature)
Инициализирует и регистрирует MBean в сервере MBean.
ObjectInstance createMBean(String className, ObjectName name, ObjectName loaderName)
Инициализирует и регистрирует MBean в сервере MBean.
ObjectInstance createMBean(String className, ObjectName name, ObjectName loaderName, Object[] params, String[] signature)
Инициализирует и регистрирует MBean в сервере MBean.
default ObjectInputStream deserialize(String className, byte[] data)
Устарело.
Используйте getClassLoaderRepository() для получения хранилища загрузчиков классов и используйте его для десериализации.
default ObjectInputStream deserialize(String className, ObjectName loaderName, byte[] data)
Устарело.
Используйте getClassLoader для получения загрузчика классов для десериализации.
default ObjectInputStream deserialize(ObjectName name, byte[] data)
Устарело.
Используйте getClassLoaderFor для получения соответствующего загрузчика классов для десериализации.
Object getAttribute(ObjectName name, String attribute)
Получает значение определённого атрибута указанного MBean.
AttributeList getAttributes(ObjectName name, String[] attributes)
Извлекает значения нескольких атрибутов указанного MBean.
ClassLoader getClassLoader(ObjectName loaderName)
Возвращает указанный ClassLoader.
ClassLoader getClassLoaderFor(ObjectName mbeanName)
Возвращает ClassLoader, используемый для загрузки класса указанного MBean.
ClassLoaderRepository getClassLoaderRepository()
Возвращает ClassLoaderRepository для этого сервера MBean.
String getDefaultDomain()
Возвращает по умолчанию домен, используемый для именования MBean.
String[] getDomains()
Возвращает список доменов, в которых в настоящее время зарегистрирован любой MBean.
Integer getMBeanCount()
Возвращает количество зарегистрированных MBean в сервере MBean.
MBeanInfo getMBeanInfo(ObjectName name)
Этот метод обнаруживает атрибуты и операции, которые MBean предоставляет для управления.
ObjectInstance getObjectInstance(ObjectName name)
Получает ObjectInstance для данного MBean, зарегистрированного в сервере MBean.
Object instantiate(String className)
Инициализирует объект, используя список всех загрузчиков классов, зарегистрированных в Class Loader Repository сервера MBean.
Object instantiate(String className, Object[] params, String[] signature)
Инициализирует объект, используя список всех загрузчиков классов, зарегистрированных в Class Loader Repository сервера MBean.
Object instantiate(String className, ObjectName loaderName)
Инициализирует объект, используя загрузчик классов, указанный его ObjectName.
Object instantiate(String className, ObjectName loaderName, Object[] params, String[] signature)
Инициализирует объект.
Object invoke(ObjectName name, String operationName, Object[] params, String[] signature)
Вызывает операцию над MBean.
boolean isInstanceOf(ObjectName name, String className)
Возвращает true, если MBean является экземпляром указанного класса, иначе false.
boolean isRegistered(ObjectName name)
Проверяет, зарегистрирован ли MBean, идентифицированный своим именем объекта, в сервере MBean.
Set<ObjectInstance> queryMBeans(ObjectName name, QueryExp query)
Получает MBean, управляемые сервером MBean.
Set<ObjectName> queryNames(ObjectName name, QueryExp query)
Получает имена MBean, управляемые сервером MBean.
ObjectInstance registerMBean(Object object, ObjectName name)
Регистрирует существующий объект как MBean в сервере MBean.
void removeNotificationListener(ObjectName name, NotificationListener listener)
Удаляет слушателя из зарегистрированного MBean.
void removeNotificationListener(ObjectName name, NotificationListener listener, NotificationFilter filter, Object handback)
Удаляет слушателя из зарегистрированного MBean.
void removeNotificationListener(ObjectName name, ObjectName listener)
Удаляет слушателя из зарегистрированного MBean.
void removeNotificationListener(ObjectName name, ObjectName listener, NotificationFilter filter, Object handback)
Удаляет слушателя из зарегистрированного MBean.
void setAttribute(ObjectName name, Attribute attribute)
Устанавливает значение определённого атрибута указанного MBean.
AttributeList setAttributes(ObjectName name, AttributeList attributes)
Устанавливает значения нескольких атрибутов указанного MBean.
void unregisterMBean(ObjectName name)
Удаляет MBean из сервера MBean.

Подробное описание методов

createMBean

ObjectInstance createMBean(String className, ObjectName name) throws ReflectionException, InstanceAlreadyExistsException, MBeanRegistrationException, MBeanException, NotCompliantMBeanException

Создаёт и регистрирует MBean в сервере MBean. Сервер MBean будет использовать свой Default Loader Repository для загрузки класса MBean. MBean ассоциируется с именем объекта. Если указанное имя объекта равно null, MBean должен предоставить собственное имя, реализовав интерфейс MBeanRegistration и вернув имя из метода preRegister.

Этот метод эквивалентен createMBean(className, name, (Object[]) null, (String[]) null).

Если этот метод успешно создаёт MBean, отправляется уведомление, как описано выше.

Определено в:
createMBean в интерфейсе MBeanServerConnection
Параметры:
className - Имя класса MBean, подлежащего созданию.
name - Имя объекта MBean. Может быть null.
Возвращает:
Объект ObjectInstance, содержащий ObjectName и имя Java-класса вновь созданного MBean. Если содержимое ObjectName равно n, содержимое имени Java-класса равно getMBeanInfo(n).getClassName().
Исключения:
RuntimeOperationsException - Обертка java.lang.IllegalArgumentException: Имя класса, переданное в качестве параметра, равно null, имя ObjectName, переданное в качестве параметра, содержит шаблон или для MBean не указано ObjectName.
RuntimeMBeanException - Если конструктор MBean или его метод preRegister или postRegister выбросил RuntimeException. Если метод postRegister (интерфейс MBeanRegistration) MBean выбросил RuntimeException, метод createMBean выбросит RuntimeMBeanException, хотя создание и регистрация MBean прошли успешно. В таком случае MBean будет зарегистрирован, даже если метод createMBean выбросил исключение. Обратите внимание, что RuntimeMBeanException также может быть выброшен preRegister, в этом случае MBean не будет зарегистрирован.
RuntimeErrorException - Если метод postRegister (интерфейс MBeanRegistration) MBean выбросил Error, метод createMBean выбросит RuntimeErrorException, хотя создание и регистрация MBean прошли успешно. В таком случае MBean будет зарегистрирован, даже если метод createMBean выбросил исключение. Обратите внимание, что RuntimeErrorException также может быть выброшен preRegister, в этом случае MBean не будет зарегистрирован.
ReflectionException - Обертка java.lang.ClassNotFoundException или java.lang.Exception, произошедшая при попытке вызвать конструктор MBean.
InstanceAlreadyExistsException - MBean уже находится под управлением сервера MBean.
MBeanRegistrationException - Метод preRegister (интерфейс MBeanRegistration) MBean выбросил исключение. MBean не будет зарегистрирован.
MBeanException - Конструктор MBean выбросил исключение
NotCompliantMBeanException - Этот класс не является совместимым с JMX MBean
См. также:
  • MBeanRegistration

createMBean

ObjectInstance createMBean(String className, ObjectName name, ObjectName loaderName) throws ReflectionException, InstanceAlreadyExistsException, MBeanRegistrationException, MBeanException, NotCompliantMBeanException, InstanceNotFoundException

Создаёт и регистрирует MBean в сервере MBean. Класс загрузчик определяется по имени объекта. MBean ассоциируется с именем объекта. Если имя объекта загрузчика равно null, используется ClassLoader, который загрузил сервер MBean. Если имя объекта MBean равно null, MBean должен предоставить собственное имя, реализовав интерфейс MBeanRegistration и вернув имя из метода preRegister.

Этот метод эквивалентен createMBean(className, name, loaderName, (Object[]) null, (String[]) null).

Если этот метод успешно создаёт MBean, отправляется уведомление, как описано выше.

Определено в:
createMBean в интерфейсе MBeanServerConnection
Параметры:
className - Имя класса MBean, подлежащего созданию.
name - Имя объекта MBean. Может быть null.
loaderName - Имя объекта загрузчика класса.
Возвращает:
Объект ObjectInstance, содержащий ObjectName и имя Java-класса вновь созданного MBean. Если содержимое ObjectName равно n, содержимое имени Java-класса равно getMBeanInfo(n).getClassName().
Исключения:
RuntimeOperationsException - Обертка java.lang.IllegalArgumentException: Имя класса, переданное в качестве параметра, равно null, имя ObjectName, переданное в качестве параметра, содержит шаблон или для MBean не указано ObjectName.
RuntimeMBeanException - Если конструктор MBean или его метод preRegister или postRegister выбросил RuntimeException. Если метод postRegister (интерфейс MBeanRegistration) MBean выбросил RuntimeException, метод createMBean выбросит RuntimeMBeanException, хотя создание и регистрация MBean прошли успешно. В таком случае MBean будет зарегистрирован, даже если метод createMBean выбросил исключение. Обратите внимание, что RuntimeMBeanException также может быть выброшен preRegister, в этом случае MBean не будет зарегистрирован.
RuntimeErrorException - Если метод postRegister (интерфейс MBeanRegistration) MBean выбросил Error, метод createMBean выбросит RuntimeErrorException, хотя создание и регистрация MBean прошли успешно. В таком случае MBean будет зарегистрирован, даже если метод createMBean выбросил исключение. Обратите внимание, что RuntimeErrorException также может быть выброшен preRegister, в этом случае MBean не будет зарегистрирован.
ReflectionException - Обертка java.lang.ClassNotFoundException или java.lang.Exception, произошедшая при попытке вызвать конструктор MBean.
InstanceAlreadyExistsException - MBean уже находится под управлением сервера MBean.
MBeanRegistrationException - Метод preRegister (интерфейс MBeanRegistration) MBean выбросил исключение. MBean не будет зарегистрирован.
MBeanException - Конструктор MBean выбросил исключение
NotCompliantMBeanException - Этот класс не является совместимым с JMX MBean
InstanceNotFoundException - Указанный загрузчик классов не зарегистрирован в сервере MBean.
См. также:
  • MBeanRegistration

createMBean

ObjectInstance createMBean(String className, ObjectName name, Object[] params, String[] signature) throws ReflectionException, InstanceAlreadyExistsException, MBeanRegistrationException, MBeanException, NotCompliantMBeanException
Создает и регистрирует MBean в сервере MBean. Сервер MBean будет использовать свой Default Loader Repository для загрузки класса MBean. Имя объекта связывается с MBean. Если указанное имя объекта равно null, MBean должен предоставить собственное имя, реализовав интерфейс MBeanRegistration и вернув имя из метода preRegister.

Если этот метод успешно создает MBean, отправляется уведомление, как описано выше.

Указано в:
createMBean в интерфейсе MBeanServerConnection
Параметры:
className - Имя класса MBean, который должен быть создан.
name - Имя объекта MBean. Может быть null.
params - Массив, содержащий параметры конструктора, который должен быть вызван.
signature - Массив, содержащий сигнатуру конструктора, который должен быть вызван.
Возвращает:
An ObjectInstance, containing the ObjectName and the Java class name of the newly instantiated MBean. If the contained ObjectName is n, the contained Java class name is getMBeanInfo(n).getClassName().
Исключения:
RuntimeOperationsException - Wraps a java.lang.IllegalArgumentException: The className passed in parameter is null, the ObjectName passed in parameter contains a pattern or no ObjectName is specified for the MBean.
RuntimeMBeanException - Если конструктор MBean или его методы preRegister или postRegister вызвали исключение RuntimeException. Если метод postRegister (интерфейс MBeanRegistration) MBean вызывает исключение RuntimeException, метод createMBean вызовет исключение RuntimeMBeanException, хотя создание и регистрация MBean были успешными. В этом случае MBean будет фактически зарегистрирован, даже если метод createMBean вызвал исключение. Обратите внимание, что RuntimeMBeanException также может быть вызвано preRegister, в этом случае MBean не будет зарегистрирован.
RuntimeErrorException - Если метод postRegister (интерфейс MBeanRegistration) MBean вызывает исключение Error, метод createMBean вызовет исключение RuntimeErrorException, хотя создание и регистрация MBean были успешными. В этом случае MBean будет фактически зарегистрирован, даже если метод createMBean вызвал исключение. Обратите внимание, что RuntimeErrorException также может быть вызвано preRegister, в этом случае MBean не будет зарегистрирован.
ReflectionException - Wraps a java.lang.ClassNotFoundException or a java.lang.Exception that occurred when trying to invoke the MBean's constructor.
InstanceAlreadyExistsException - MBean уже находится под управлением сервера MBean.
MBeanRegistrationException - Метод preRegister (интерфейс MBeanRegistration) MBean вызвал исключение. MBean не будет зарегистрирован.
MBeanException - Конструктор MBean вызвал исключение
NotCompliantMBeanException - Этот класс не является совместимым с JMX MBean
См. также:
  • MBeanRegistration

createMBean

ObjectInstance createMBean(String className, ObjectName name, ObjectName loaderName, Object[] params, String[] signature) throws ReflectionException, InstanceAlreadyExistsException, MBeanRegistrationException, MBeanException, NotCompliantMBeanException, InstanceNotFoundException

Создает и регистрирует MBean в сервере MBean. Загрузчик классов, который будет использоваться, определяется по его имени объекта. Имя объекта связывается с MBean. Если имя объекта загрузчика не указано, будет использоваться ClassLoader, загрузивший сервер MBean. Если указанное имя объекта MBean равно null, MBean должен предоставить собственное имя, реализовав интерфейс MBeanRegistration и вернув имя из метода preRegister.

Если этот метод успешно создает MBean, отправляется уведомление, как описано выше.

Указано в:
createMBean в интерфейсе MBeanServerConnection
Параметры:
className - Имя класса MBean, который должен быть создан.
name - Имя объекта MBean. Может быть null.
loaderName - Имя объекта загрузчика классов, который должен быть использован.
params - Массив, содержащий параметры конструктора, который должен быть вызван.
signature - Массив, содержащий сигнатуру конструктора, который должен быть вызван.
Возвращает:
An ObjectInstance, containing the ObjectName and the Java class name of the newly instantiated MBean. If the contained ObjectName is n, the contained Java class name is getMBeanInfo(n).getClassName().
Исключения:
RuntimeOperationsException - Wraps a java.lang.IllegalArgumentException: The className passed in parameter is null, the ObjectName passed in parameter contains a pattern or no ObjectName is specified for the MBean.
RuntimeMBeanException - Конструктор MBean или его методы preRegister или postRegister вызвали исключение RuntimeException. Если метод postRegister (интерфейс MBeanRegistration) MBean вызывает исключение RuntimeException, метод createMBean вызовет исключение RuntimeMBeanException, хотя создание и регистрация MBean были успешными. В этом случае MBean будет фактически зарегистрирован, даже если метод createMBean вызвал исключение. Обратите внимание, что RuntimeMBeanException также может быть вызвано preRegister, в этом случае MBean не будет зарегистрирован.
RuntimeErrorException - Если метод postRegister (интерфейс MBeanRegistration) MBean вызывает исключение Error, метод createMBean вызовет исключение RuntimeErrorException, хотя создание и регистрация MBean были успешными. В этом случае MBean будет фактически зарегистрирован, даже если метод createMBean вызвал исключение. Обратите внимание, что RuntimeErrorException также может быть вызвано preRegister, в этом случае MBean не будет зарегистрирован.
ReflectionException - Wraps a java.lang.ClassNotFoundException or a java.lang.Exception that occurred when trying to invoke the MBean's constructor.
InstanceAlreadyExistsException - MBean уже находится под управлением сервера MBean.
MBeanRegistrationException - Метод preRegister (интерфейс MBeanRegistration) MBean вызвал исключение. MBean не будет зарегистрирован.
MBeanException - Конструктор MBean вызвал исключение
NotCompliantMBeanException - Этот класс не является совместимым с JMX MBean
InstanceNotFoundException - Указанный загрузчик классов не зарегистрирован в сервере MBean.
См. также:
  • MBeanRegistration

registerMBean

ObjectInstance registerMBean(Object object, ObjectName name) throws InstanceAlreadyExistsException, MBeanRegistrationException, NotCompliantMBeanException

Регистрирует существующий объект как MBean на сервере MBean. Если указанное имя объекта равно null, MBean должен предоставить собственное имя, реализовав интерфейс MBeanRegistration и вернув имя из метода preRegister.

Если этот метод успешно регистрирует MBean, отправляется уведомление, как описано выше.

Параметры:
object - MBean, который должен быть зарегистрирован как MBean.
name - Имя объекта MBean. Может быть null.
Возвращает:
An ObjectInstance, containing the ObjectName and the Java class name of the newly registered MBean. If the contained ObjectName is n, the contained Java class name is getMBeanInfo(n).getClassName().
Исключения:
InstanceAlreadyExistsException - MBean уже находится под управлением сервера MBean.
MBeanRegistrationException - Метод preRegister (интерфейс MBeanRegistration) MBean вызвал исключение. MBean не будет зарегистрирован.
RuntimeMBeanException - Если метод postRegister (интерфейс MBeanRegistration) MBean вызывает исключение RuntimeException, метод registerMBean вызовет исключение RuntimeMBeanException, хотя регистрация MBean была успешной. В этом случае MBean будет фактически зарегистрирован, даже если метод registerMBean вызвал исключение. Обратите внимание, что RuntimeMBeanException также может быть вызвано preRegister, в этом случае MBean не будет зарегистрирован.
RuntimeErrorException - Если метод postRegister (интерфейс MBeanRegistration) MBean вызывает исключение Error, метод registerMBean вызовет исключение RuntimeErrorException, хотя регистрация MBean была успешной. В этом случае MBean будет фактически зарегистрирован, даже если метод registerMBean вызвал исключение. Обратите внимание, что RuntimeErrorException также может быть вызвано preRegister, в этом случае MBean не будет зарегистрирован.
NotCompliantMBeanException - Этот объект не является совместимым с JMX MBean
RuntimeOperationsException - Wraps a java.lang.IllegalArgumentException: The object passed in parameter is null or no object name is specified.
См. также:
  • MBeanRegistration

unregisterMBean

void unregisterMBean(ObjectName name) throws InstanceNotFoundException, MBeanRegistrationException
Удаляет MBean из сервера MBean. MBean идентифицируется по имени объекта. После вызова метода MBean больше нельзя получить по имени объекта.

Если этот метод успешно удаляет MBean, отправляется уведомление, как описано выше.

Specified by:
unregisterMBean in interface MBeanServerConnection
Parameters:
name - Имя объекта удаляемого MBean.
Throws:
RuntimeOperationsException - Обёртка над java.lang.IllegalArgumentException: Имя объекта в параметре равно null или MBean, который вы пытаетесь удалить, является MBean MBeanServerDelegate.
RuntimeMBeanException - Если метод postDeregister (интерфейс MBeanRegistration) MBean выбрасывает RuntimeException, метод unregisterMBean выбросит RuntimeMBeanException, хотя удаление MBean прошло успешно. В таком случае MBean будет действительно удалён, несмотря на то, что метод unregisterMBean выбросил исключение. Обратите внимание, что RuntimeMBeanException также может быть выброшено preDeregister, в этом случае MBean останется зарегистрированным.
RuntimeErrorException - Если метод postDeregister (интерфейс MBeanRegistration) MBean выбрасывает Error, метод unregisterMBean выбросит RuntimeErrorException, хотя удаление MBean прошло успешно. В таком случае MBean будет действительно удалён, несмотря на то, что метод unregisterMBean выбросил исключение. Обратите внимание, что RuntimeMBeanException также может быть выброшено preDeregister, в этом случае MBean останется зарегистрированным.
InstanceNotFoundException - Указанный MBean не зарегистрирован на сервере MBean.
MBeanRegistrationException - Метод preDeregister (интерфейс MBeanRegistration) MBean выбросил исключение.
See Also:
  • MBeanRegistration

getObjectInstance

ObjectInstance getObjectInstance(ObjectName name) throws InstanceNotFoundException
Описание скопировано из интерфейса: MBeanServerConnection
Возвращает информацию об MBean по заданному имени объекта, зарегистрированном на сервере MBean.
Specified by:
getObjectInstance in interface MBeanServerConnection
Parameters:
name - Имя объекта MBean.
Returns:
Информацию об MBean, связанную с указанным именем объекта name. Содержащийся ObjectName объект является name, а имя класса — getMBeanInfo(name).getClassName().
Throws:
InstanceNotFoundException - Указанный MBean не зарегистрирован на сервере MBean.

queryMBeans

Set<ObjectInstance> queryMBeans(ObjectName name, QueryExp query)
Возвращает MBeans, управляемые сервером MBean. Этот метод позволяет получить: Все MBeans, набор MBeans, заданный по шаблону соответствия с ObjectName и/или выражением запроса, конкретный MBean. Когда имя объекта равно null или не указаны свойства домена и ключа, все объекты подлежат отбору (и отфильтровываются, если указан запрос). Возвращает набор объектов ObjectInstance (содержащих ObjectName и имя класса Java) для выбранных MBeans.
Specified by:
queryMBeans in interface MBeanServerConnection
Parameters:
name - Шаблон имени объекта, идентифицирующий MBeans для извлечения. Если равно null или не указаны свойства домена и ключа, будут извлечены все зарегистрированные MBeans.
query - Выражение запроса, применяемое для выбора MBeans. Если равно null, выражение запроса не будет применено для выбора MBeans.
Returns:
Набор, содержащий объекты ObjectInstance для выбранных MBeans. Если ни один MBean не удовлетворяет запросу, возвращается пустой список.

queryNames

Set<ObjectName> queryNames(ObjectName name, QueryExp query)
Возвращает имена MBeans, управляемые сервером MBean. Этот метод позволяет получить: Имена всех MBeans, имена набора MBeans, заданные по шаблону соответствия с ObjectName и/или выражением запроса, конкретное имя MBean (эквивалентно проверке, зарегистрирован ли MBean). Когда имя объекта равно null или не указаны свойства домена и ключа, выбираются все объекты (и отфильтровываются, если указан запрос). Возвращает набор имен объектов для выбранных MBeans.
Specified by:
queryNames in interface MBeanServerConnection
Parameters:
name - Шаблон имени объекта, идентифицирующий имена MBeans для извлечения. Если равно null или не указаны свойства домена и ключа, будут извлечены имена всех зарегистрированных MBeans.
query - Выражение запроса, применяемое для выбора MBeans. Если равно null, выражение запроса не будет применено для выбора MBeans.
Returns:
Набор, содержащий имена объектов для выбранных MBeans. Если ни один MBean не удовлетворяет запросу, возвращается пустой список.

isRegistered

boolean isRegistered(ObjectName name)
Описание скопировано из интерфейса: MBeanServerConnection
Проверяет, зарегистрирован ли MBean, идентифицированный по имени объекта, на сервере MBean.
Specified by:
isRegistered in interface MBeanServerConnection
Parameters:
name - Имя объекта MBean для проверки.
Returns:
True, если MBean уже зарегистрирован на сервере MBean, иначе false.
Throws:
RuntimeOperationsException - Обёртка над java.lang.IllegalArgumentException: Имя объекта в параметре равно null.

getMBeanCount

Integer getMBeanCount()
Возвращает количество зарегистрированных MBeans на сервере MBean.
Specified by:
getMBeanCount in interface MBeanServerConnection
Returns:
Количество зарегистрированных MBeans, обернутое в Integer. Если разрешения вызывающего узла ограничены, это число может быть больше, чем число MBeans, к которым у вызывающего узла есть доступ.

getAttribute

Object getAttribute(ObjectName name, String attribute) throws MBeanException, AttributeNotFoundException, InstanceNotFoundException, ReflectionException
Описание скопировано из интерфейса: MBeanServerConnection
Возвращает значение указанного атрибута именованного MBean. MBean идентифицируется по имени объекта.
Specified by:
getAttribute in interface MBeanServerConnection
Parameters:
name - Имя объекта MBean, из которого необходимо извлечь атрибут.
attribute - Строка, содержащая имя атрибута для извлечения.
Returns:
Значение извлечённого атрибута.
Throws:
RuntimeOperationsException - Обёртка над java.lang.IllegalArgumentException: Имя объекта в параметре равно null или атрибут в параметре равен null.
MBeanException - Обёртка над исключением, выброшенным методом получения MBean.
AttributeNotFoundException - Указанный атрибут недоступен в MBean.
InstanceNotFoundException - Указанный MBean не зарегистрирован на сервере MBean.
ReflectionException - Обёртка над java.lang.Exception, выброшенной при попытке вызвать setter.
See Also:
  • MBeanServerConnection.setAttribute(javax.management.ObjectName, javax.management.Attribute)

getAttributes

AttributeList getAttributes(ObjectName name, String[] attributes) throws InstanceNotFoundException, ReflectionException
Описание скопировано из интерфейса: MBeanServerConnection

Извлекает значения нескольких атрибутов именованного MBean. MBean идентифицируется по имени объекта.

Если один или несколько атрибутов не могут быть извлечены по какой-либо причине, они будут исключены из возвращаемого списка AttributeList. Вызывающий метод должен проверить, что список имеет такой же размер, как и массив attributes. Чтобы определить проблему, которая помешала извлечь заданный атрибут, вызовите getAttribute для этого атрибута.

Вот пример вызова этого метода и проверки, что он успешно извлёк все запрошенные атрибуты:

 String[] attrNames = ...;
 AttributeList list = mbeanServerConnection.getAttributes(objectName, attrNames);
 if (list.size() == attrNames.length)
     System.out.println("All attributes were retrieved successfully");
 else {
     List<String> missing = new ArrayList<String>(Arrays.asList(attrNames));
     for (Attribute a : list.asList())
         missing.remove(a.getName());
     System.out.println("Did not retrieve: " + missing);
 }
 
Specified by:
getAttributes in interface MBeanServerConnection
Parameters:
name - Имя объекта MBean, из которого извлекаются атрибуты.
attributes - Список атрибутов для извлечения.
Returns:
Список извлечённых атрибутов.
Throws:
RuntimeOperationsException - Обёртка над java.lang.IllegalArgumentException: Имя объекта в параметре равно null или атрибуты в параметре равны null.
InstanceNotFoundException - Указанный MBean не зарегистрирован на сервере MBean.
ReflectionException - Произошло исключение при попытке вызвать метод getAttributes динамического MBean.
See Also:
  • MBeanServerConnection.setAttributes(javax.management.ObjectName, javax.management.AttributeList)

setAttribute

void setAttribute(ObjectName name, Attribute attribute) throws InstanceNotFoundException, AttributeNotFoundException, InvalidAttributeValueException, MBeanException, ReflectionException
Описание скопировано из интерфейса: MBeanServerConnection
Устанавливает значение определённого атрибута управляемого объекта MBean с указанным именем. Управляемый объект идентифицируется по имени объекта.
Определено в:
setAttribute в интерфейсе MBeanServerConnection
Параметры:
name - Имя управляемого объекта MBean, атрибут которого требуется установить.
attribute - Идентификатор атрибута, который нужно установить, и значение, на которое нужно установить.
Исключения:
RuntimeOperationsException - Оборачивает java.lang.IllegalArgumentException: имя объекта равно null или атрибут равен null.
InstanceNotFoundException - Управляемый объект MBean не зарегистрирован в сервере MBean.
AttributeNotFoundException - Указанный атрибут недоступен в управляемом объекте MBean.
InvalidAttributeValueException - Указанное значение атрибута не является допустимым.
MBeanException - Оборачивает исключение, выброшенное установщиком атрибута управляемого объекта MBean.
ReflectionException - Оборачивает java.lang.Exception, выброшенное при попытке вызвать установщик.
См. также:
  • MBeanServerConnection.getAttribute(javax.management.ObjectName, java.lang.String)

setAttributes

AttributeList setAttributes(ObjectName name, AttributeList attributes) throws InstanceNotFoundException, ReflectionException
Описание скопировано из интерфейса: MBeanServerConnection

Устанавливает значения нескольких атрибутов управляемого объекта MBean с указанным именем. Управляемый объект идентифицируется по имени объекта.

Если один или несколько атрибутов по какой-либо причине не могут быть установлены, они будут опущены из возвращаемого AttributeList. Вызывающий код должен проверить, что размер входного AttributeList совпадает с размером выходного. Чтобы определить, какая проблема помешала получению определённого атрибута, обычно можно вызвать setAttribute для этого атрибута, хотя это не гарантируется. (Например, значения двух атрибутов могут быть отклонены из-за их несовместимости друг с другом. Установка одного из них по отдельности может быть разрешена.)

Вот пример вызова этого метода и проверки успешности установки всех запрошенных атрибутов:

 AttributeList inputAttrs = ...;
 AttributeList outputAttrs = mbeanServerConnection.setAttributes(objectName, inputAttrs);
 if (inputAttrs.size() == outputAttrs.size())
     System.out.println("All attributes were set successfully");
 else {
     List<String> missing = new ArrayList<String>();
     for (Attribute a : inputAttrs.asList())
         missing.add(a.getName());
     for (Attribute a : outputAttrs.asList())
         missing.remove(a.getName());
     System.out.println("Did not set: " + missing);
 }
 
Определено в:
setAttributes в интерфейсе MBeanServerConnection
Параметры:
name - Имя объекта управляемого объекта MBean, атрибуты которого нужно установить.
attributes - Список атрибутов: идентификаторы атрибутов, которые нужно установить, и значения, на которые нужно установить.
Возвращает:
Список атрибутов, которые были установлены, с их новыми значениями.
Исключения:
RuntimeOperationsException - Оборачивает java.lang.IllegalArgumentException: имя объекта равно null или список атрибутов равен null.
InstanceNotFoundException - Управляемый объект MBean не зарегистрирован в сервере MBean.
ReflectionException - Произошла ошибка при попытке вызвать метод getAttributes динамического управляемого объекта MBean.
См. также:
  • MBeanServerConnection.getAttributes(javax.management.ObjectName, java.lang.String[])

invoke

Object invoke(ObjectName name, String operationName, Object[] params, String[] signature) throws InstanceNotFoundException, MBeanException, ReflectionException
Описание скопировано из интерфейса: MBeanServerConnection

Вызывает операцию на управляемом объекте MBean.

Из-за необходимости signature для различения возможных перегруженных операций, намного проще вызывать операции через прокси управляемого объекта, где это возможно. Например, предположим, что у вас есть интерфейс стандартного управляемого объекта MBean, такой как:

 public interface FooMBean {
     public int countMatches(String[] patterns, boolean ignoreCase);
 }
 

Операцию countMatches можно вызвать следующим образом:

 String[] myPatterns = ...;
 int count = (Integer) mbeanServerConnection.invoke(
         objectName,
         "countMatches",
         new Object[] {myPatterns, true},
         new String[] {String[].class.getName(), boolean.class.getName()});
 

Или её можно вызвать через прокси следующим образом:

 String[] myPatterns = ...;
 FooMBean fooProxy = JMX.newMBeanProxy(
         mbeanServerConnection, objectName, FooMBean.class);
 int count = fooProxy.countMatches(myPatterns, true);
 
Определено в:
invoke в интерфейсе MBeanServerConnection
Параметры:
name - Имя объекта управляемого объекта MBean, на котором нужно вызвать метод.
operationName - Имя операции, которую нужно вызвать.
params - Массив, содержащий параметры, которые нужно установить при вызове операции
signature - Массив, содержащий сигнатуру операции, массив имён классов в формате, возвращаемом Class.getName(). Объекты классов будут загружаться с помощью того же загрузчика классов, что и тот, который использовался для загрузки управляемого объекта MBean, на котором вызывалась операция.
Возвращает:
Объект, возвращённый операцией, представляющий результат вызова операции на указанном управляемом объекте MBean.
Исключения:
InstanceNotFoundException - Управляемый объект MBean не зарегистрирован в сервере MBean.
MBeanException - Оборачивает исключение, выброшенное вызванным методом управляемого объекта MBean.
ReflectionException - Оборачивает java.lang.Exception, выброшенное при попытке вызвать метод.

getDefaultDomain

String getDefaultDomain()
Описание скопировано из интерфейса: MBeanServerConnection
Возвращает домен по умолчанию, используемый для именования управляемых объектов MBean. Имя домена по умолчанию используется в качестве части имени объекта MBean, если пользователь не указывает домен.
Определено в:
getDefaultDomain в интерфейсе MBeanServerConnection
Возвращает:
домен по умолчанию.

getDomains

String[] getDomains()
Описание скопировано из интерфейса: MBeanServerConnection

Возвращает список доменов, в которых в настоящее время зарегистрирован хотя бы один управляемый объект MBean. Строка находится в возвращаемом массиве тогда и только тогда, когда зарегистрирован по крайней мере один управляемый объект MBean с именем объекта, у которого getDomain() равно этой строке. Порядок строк в возвращаемом массиве не определён.

Определено в:
getDomains в интерфейсе MBeanServerConnection
Возвращает:
список доменов.

addNotificationListener

void addNotificationListener(ObjectName name, NotificationListener listener, NotificationFilter filter, Object handback) throws InstanceNotFoundException

Добавляет слушателя к зарегистрированному управляемому объекту MBean. Уведомления, исходящие от управляемого объекта, будут перенаправлены слушателю.

Если источник уведомления является ссылкой на объект управляемого объекта, сервер MBean заменит его именем объекта этого управляемого объекта. В противном случае источник остаётся без изменений.
Определено в:
addNotificationListener в интерфейсе MBeanServerConnection
Параметры:
name - Имя управляемого объекта MBean, к которому должен быть добавлен слушатель.
listener - Объект слушателя, который будет обрабатывать уведомления, исходящие от зарегистрированного управляемого объекта.
filter - Объект фильтра. Если filter равен null, фильтрация уведомлений не будет выполняться.
handback - Контекст, который будет передан слушателю при отправке уведомления.
Исключения:
InstanceNotFoundException - Предоставленное имя управляемого объекта не соответствует ни одному из зарегистрированных управляемых объектов.
См. также:
  • MBeanServerConnection.removeNotificationListener(ObjectName, NotificationListener)
  • MBeanServerConnection.removeNotificationListener(ObjectName, NotificationListener, NotificationFilter, Object)

addNotificationListener

void addNotificationListener(ObjectName name, ObjectName listener, NotificationFilter filter, Object handback) throws InstanceNotFoundException

Добавляет слушателя к зарегистрированному MBean.

Уведомление, испущенное MBean, будет перенаправлено сервером MBeanServer слушателю. Если источником уведомления является ссылка на объект MBean, сервер MBean заменит её именем объекта MBean. В противном случае источник остаётся неизменным.

Объект слушателя, который получает уведомления, — это тот, который зарегистрирован под данным именем в момент вызова этого метода. Даже если он будет позже дезактивирован, он по-прежнему будет получать уведомления.

Specified by:
addNotificationListener in interface MBeanServerConnection
Parameters:
name - Имя MBean, к которому должен быть добавлен слушатель.
listener - Имя объекта слушателя, который будет обрабатывать уведомления, испущенные зарегистрированным MBean.
filter - Объект фильтра. Если filter равен null, никакое фильтрация перед обработкой уведомлений не будет выполнена.
handback - Контекст, который будет передан слушателю при испускании уведомления.
Throws:
RuntimeOperationsException - Оборачивает IllegalArgumentException. MBean с именем listener существует, но не реализует интерфейс NotificationListener.
InstanceNotFoundException - Имя MBean слушателя уведомлений или распространителя уведомлений не соответствует ни одному из зарегистрированных MBean.
See Also:
  • MBeanServerConnection.removeNotificationListener(ObjectName, ObjectName)
  • MBeanServerConnection.removeNotificationListener(ObjectName, ObjectName, NotificationFilter, Object)

removeNotificationListener

void removeNotificationListener(ObjectName name, ObjectName listener) throws InstanceNotFoundException, ListenerNotFoundException
Описание, скопированное из интерфейса: MBeanServerConnection
Удаляет слушателя из зарегистрированного MBean.

Если слушатель зарегистрирован более одного раза, возможно, с разными фильтрами или обратными вызовами, этот метод удалит все эти регистрации.

Specified by:
removeNotificationListener in interface MBeanServerConnection
Parameters:
name - Имя MBean, из которого должен быть удален слушатель.
listener - Имя объекта слушателя, который нужно удалить.
Throws:
InstanceNotFoundException - Предоставленное имя MBean не соответствует ни одному из зарегистрированных MBean.
ListenerNotFoundException - Слушатель не зарегистрирован в MBean.
See Also:
  • MBeanServerConnection.addNotificationListener(ObjectName, ObjectName, NotificationFilter, Object)

removeNotificationListener

void removeNotificationListener(ObjectName name, ObjectName listener, NotificationFilter filter, Object handback) throws InstanceNotFoundException, ListenerNotFoundException
Описание, скопированное из интерфейса: MBeanServerConnection

Удаляет слушателя из зарегистрированного MBean.

MBean должен иметь слушателя, который точно соответствует заданным параметрам listener, filter и handback. Если таких слушателей несколько, удаляется только один.

Параметры filter и handback могут быть null только в том случае, если они являются null в удаляемом слушателе.

Specified by:
removeNotificationListener in interface MBeanServerConnection
Parameters:
name - Имя MBean, из которого должен быть удалён слушатель.
listener - Имя объекта слушателя, который нужно удалить.
filter - Фильтр, указанный при добавлении слушателя.
handback - Данные, указанные при добавлении слушателя.
Throws:
InstanceNotFoundException - Предоставленное имя MBean не соответствует ни одному из зарегистрированных MBean.
ListenerNotFoundException - Слушатель не зарегистрирован в MBean или не зарегистрирован с заданным фильтром и данными.
See Also:
  • MBeanServerConnection.addNotificationListener(ObjectName, ObjectName, NotificationFilter, Object)

removeNotificationListener

void removeNotificationListener(ObjectName name, NotificationListener listener) throws InstanceNotFoundException, ListenerNotFoundException
Описание, скопированное из интерфейса: MBeanServerConnection

Удаляет слушателя из зарегистрированного MBean.

Если слушатель зарегистрирован более одного раза, возможно, с разными фильтрами или обратными вызовами, этот метод удалит все эти регистрации.

Specified by:
removeNotificationListener in interface MBeanServerConnection
Parameters:
name - Имя MBean, из которого должен быть удалён слушатель.
listener - Слушатель, который нужно удалить.
Throws:
InstanceNotFoundException - Предоставленное имя MBean не соответствует ни одному из зарегистрированных MBean.
ListenerNotFoundException - Слушатель не зарегистрирован в MBean.
See Also:
  • MBeanServerConnection.addNotificationListener(ObjectName, NotificationListener, NotificationFilter, Object)

removeNotificationListener

void removeNotificationListener(ObjectName name, NotificationListener listener, NotificationFilter filter, Object handback) throws InstanceNotFoundException, ListenerNotFoundException
Описание, скопированное из интерфейса: MBeanServerConnection

Удаляет слушателя из зарегистрированного MBean.

MBean должен иметь слушателя, который точно соответствует заданным параметрам listener, filter и handback. Если таких слушателей несколько, удаляется только один.

Параметры filter и handback могут быть null только в том случае, если они являются null в удаляемом слушателе.

Specified by:
removeNotificationListener in interface MBeanServerConnection
Parameters:
name - Имя MBean, из которого должен быть удалён слушатель.
listener - Слушатель, который нужно удалить.
filter - Фильтр, указанный при добавлении слушателя.
handback - Данные, указанные при добавлении слушателя.
Throws:
InstanceNotFoundException - Предоставленное имя MBean не соответствует ни одному из зарегистрированных MBean.
ListenerNotFoundException - Слушатель не зарегистрирован в MBean или не зарегистрирован с заданным фильтром и данными.
See Also:
  • MBeanServerConnection.addNotificationListener(ObjectName, NotificationListener, NotificationFilter, Object)

getMBeanInfo

MBeanInfo getMBeanInfo(ObjectName name) throws InstanceNotFoundException, IntrospectionException, ReflectionException
Описание, скопированное из интерфейса: MBeanServerConnection
Этот метод обнаруживает атрибуты и операции, которые MBean предоставляет для управления.
Specified by:
getMBeanInfo in interface MBeanServerConnection
Parameters:
name - Имя MBean для анализа
Returns:
Экземпляр MBeanInfo, позволяющий извлечь все атрибуты и операции этого MBean.
Throws:
InstanceNotFoundException - Указанный MBean не найден.
IntrospectionException - Произошла ошибка во время интроспекции.
ReflectionException - Произошла ошибка при попытке вызвать getMBeanInfo для динамического MBean.

isInstanceOf

boolean isInstanceOf(ObjectName name, String className) throws InstanceNotFoundException
Описание, скопированное из интерфейса: MBeanServerConnection

Возвращает true, если указанный MBean является экземпляром указанного класса, в противном случае — false.

Если name не указывает на MBean, этот метод выбрасывает InstanceNotFoundException.

В противном случае, пусть
X — MBean, имя которого указано в name,
L — загрузчик классов X,
N — имя класса в MBeanInfo X.

Если N равно className, результат — true.

В противном случае, если L успешно загружает className и X является экземпляром этого класса, результат — true.

В противном случае, если L успешно загружает N и className, и второй класс наследуется от первого, результат — true.

В противном случае, результат — false.

Specified by:
isInstanceOf в интерфейсе MBeanServerConnection
Параметры:
name - Имя MBean.
className - Имя класса.
Возвращает:
true, если указанный MBean является экземпляром указанного класса в соответствии с вышеуказанными правилами, в противном случае — false.
Исключения:
InstanceNotFoundException - Указанный MBean не зарегистрирован в сервере MBean.
См. также:
  • Class.isInstance(java.lang.Object)

instantiate

Object instantiate(String className) throws ReflectionException, MBeanException

Создаёт объект с использованием списка всех загрузчиков классов, зарегистрированных в хранилище загрузчиков классов сервера MBean. Класс объекта должен иметь публичный конструктор. Этот метод возвращает ссылку на только что созданный объект. Созданный объект не регистрируется в сервере MBean.

Этот метод эквивалентен методу instantiate(className, (Object[]) null, (String[]) null).

Параметры:
className - Имя класса создаваемого объекта.
Возвращает:
Созданный объект.
Исключения:
ReflectionException - Обёртка над java.lang.ClassNotFoundException или java.lang.Exception, произошедшей при попытке вызова конструктора объекта.
MBeanException - Конструктор объекта выбросил исключение
RuntimeOperationsException - Обёртка над java.lang.IllegalArgumentException: Имя класса, переданное в качестве параметра, равно null.

instantiate

Object instantiate(String className, ObjectName loaderName) throws ReflectionException, MBeanException, InstanceNotFoundException

Создаёт объект с использованием загрузчика классов, идентифицируемого по имени объекта. Если имя загрузчика равно null, используется загрузчик классов, который загрузил сервер MBean. Класс объекта должен иметь публичный конструктор. Этот метод возвращает ссылку на только что созданный объект. Созданный объект не регистрируется в сервере MBean.

Этот метод эквивалентен методу instantiate(className, loaderName, (Object[]) null, (String[]) null).

Параметры:
className - Имя класса MBean, подлежащего созданию.
loaderName - Имя объекта загрузчика классов, который будет использоваться.
Возвращает:
Созданный объект.
Исключения:
ReflectionException - Обёртка над java.lang.ClassNotFoundException или java.lang.Exception, произошедшей при попытке вызова конструктора объекта.
MBeanException - Конструктор объекта выбросил исключение.
InstanceNotFoundException - Указанный загрузчик классов не зарегистрирован в сервере MBean.
RuntimeOperationsException - Обёртка над java.lang.IllegalArgumentException: Имя класса, переданное в качестве параметра, равно null.

instantiate

Object instantiate(String className, Object[] params, String[] signature) throws ReflectionException, MBeanException

Создаёт объект с использованием списка всех загрузчиков классов, зарегистрированных в хранилище загрузчиков классов сервера MBean. Класс объекта должен иметь публичный конструктор. Вызов возвращает ссылку на только что созданный объект. Созданный объект не регистрируется в сервере MBean.

Параметры:
className - Имя класса создаваемого объекта.
params - Массив, содержащий параметры вызываемого конструктора.
signature - Массив, содержащий сигнатуру вызываемого конструктора.
Возвращает:
Созданный объект.
Исключения:
ReflectionException - Обёртка над java.lang.ClassNotFoundException или java.lang.Exception, произошедшей при попытке вызова конструктора объекта.
MBeanException - Конструктор объекта выбросил исключение
RuntimeOperationsException - Обёртка над java.lang.IllegalArgumentException: Имя класса, переданное в параметре, равно null.

instantiate

Object instantiate(String className, ObjectName loaderName, Object[] params, String[] signature) throws ReflectionException, MBeanException, InstanceNotFoundException

Создаёт объект. Загрузчик классов, который будет использоваться, определяется по имени объекта. Если имя объекта загрузчика равно null, используется загрузчик классов, который загрузил сервер MBean. Класс объекта должен иметь публичный конструктор. Вызов возвращает ссылку на только что созданный объект. Созданный объект не регистрируется в сервере MBean.

Параметры:
className - Имя класса создаваемого объекта.
loaderName - Имя объекта загрузчика классов, который будет использоваться.
params - Массив, содержащий параметры вызываемого конструктора.
signature - Массив, содержащий сигнатуру вызываемого конструктора.
Возвращает:
Созданный объект.
Исключения:
ReflectionException - Обёртка над java.lang.ClassNotFoundException или java.lang.Exception, произошедшей при попытке вызова конструктора объекта.
MBeanException - Конструктор объекта выбросил исключение
InstanceNotFoundException - Указанный загрузчик классов не зарегистрирован в сервере MBean.
RuntimeOperationsException - Обёртка над java.lang.IllegalArgumentException: Имя класса, переданное в качестве параметра, равно null.

deserialize

@Deprecated(since="1.5") default ObjectInputStream deserialize(ObjectName name, byte[] data) throws InstanceNotFoundException, OperationsException
Устарело.
Используйте getClassLoaderFor для получения соответствующего загрузчика классов для десериализации.

Десериализует массив байтов в контексте загрузчика классов MBean.

Требования к реализации:
Этот метод по умолчанию выбрасывает UnsupportedOperationException.
Параметры:
name - Имя MBean, загрузчик классов которого должен быть использован для десериализации.
data - Массив байтов, подлежащий десериализации.
Возвращает:
Поток десериализованного объекта.
Исключения:
InstanceNotFoundException - Указанный MBean не найден.
OperationsException - Любые обычные исключения, связанные с вводом/выводом.

deserialize

@Deprecated(since="1.5") default ObjectInputStream deserialize(String className, byte[] data) throws OperationsException, ReflectionException
Устарело.
Используйте getClassLoaderRepository() для получения хранилища загрузчиков классов и использования его для десериализации.

Десериализует массив байтов в контексте загрузчика классов заданного MBean. Загрузчик классов находится путём загрузки класса className через Class Loader Repository. Используемый загрузчик классов — загрузчик класса, полученного в результате.

Требования к реализации:
Этот метод по умолчанию выбрасывает UnsupportedOperationException.
Параметры:
className - Имя класса, загрузчик классов которого должен быть использован для десериализации.
data - Массив байтов, подлежащий десериализации.
Возвращает:
Поток десериализованного объекта.
Исключения:
OperationsException - Любые обычные исключения, связанные с вводом/выводом.
ReflectionException - Указанный класс не удалось загрузить с помощью хранилища загрузчиков классов

deserialize

@Deprecated(since="1.5") default ObjectInputStream deserialize(String className, ObjectName loaderName, byte[] data) throws InstanceNotFoundException, OperationsException, ReflectionException
Устарело.
Используйте getClassLoader для получения загрузчика классов для десериализации.

Десериализует массив байтов в контексте заданного загрузчика классов MBean. Загрузчик классов — это тот, который загрузил класс с именем "className". Имя загрузчика классов, который должен использоваться для загрузки указанного класса, задаётся. Если значение null, используется загрузчик классов сервера MBean.

Требования к реализации:
Этот метод по умолчанию выбрасывает UnsupportedOperationException.
Параметры:
className - Имя класса, загрузчик классов которого должен использоваться для десериализации.
loaderName - Имя загрузчика классов, который должен использоваться для загрузки указанного класса. Если null, используется загрузчик классов сервера MBean.
data - Массив байтов, который нужно десериализовать.
Возвращает:
Поток десериализованных объектов.
Исключения:
InstanceNotFoundException - Указанный загрузчик классов MBean не найден.
OperationsException - Любые обычные исключения, связанные с вводом/выводом.
ReflectionException - Указанный класс не может быть загружен указанным загрузчиком классов.

getClassLoaderFor

ClassLoader getClassLoaderFor(ObjectName mbeanName) throws InstanceNotFoundException

Возвращает ClassLoader, который использовался для загрузки класса указанного MBean.

Параметры:
mbeanName - ObjectName MBean.
Возвращает:
Загрузчик классов, используемый для данного MBean. Если l — фактический загрузчик классов MBean, а r — возвращаемое значение, то либо:
  • r идентичен l; или
  • результат r.loadClass(s) такой же, как l.loadClass(s) для любой строки s.
Это означает, что загрузчик классов может быть обернут в другой загрузчик классов по соображениям безопасности или другим причинам.
Исключения:
InstanceNotFoundException - если указанный MBean не найден.

getClassLoader

ClassLoader getClassLoader(ObjectName loaderName) throws InstanceNotFoundException

Возвращает указанный ClassLoader.

Параметры:
loaderName - ObjectName загрузчика классов. Может быть null, в этом случае возвращается собственный загрузчик классов сервера MBean.
Возвращает:
Указанный загрузчик классов. Если l — фактический загрузчик классов с этим именем, а r — возвращаемое значение, то либо:
  • r идентичен l; или
  • результат r.loadClass(s) такой же, как l.loadClass(s) для любой строки s.
Это означает, что загрузчик классов может быть обернут в другой загрузчик классов по соображениям безопасности или другим причинам.
Исключения:
InstanceNotFoundException - если указанный загрузчик классов не найден.

getClassLoaderRepository

ClassLoaderRepository getClassLoaderRepository()

Возвращает ClassLoaderRepository для этого сервера MBean.

Возвращает:
ClassLoaderRepository для этого сервера MBean.

© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://download.java.net/java/early_access/jdk24/docs/api/java.management/javax/management/MBeanServer.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API