Spec-Zone.ru › OpenJDK 24

Класс RMIConnector

java.lang.Object
javax.management.remote.rmi.RMIConnector
Все реализованные интерфейсы:
Closeable, Serializable, AutoCloseable, JMXAddressable, JMXConnector
public class RMIConnector extends Object implements JMXConnector, Serializable, JMXAddressable

Подключение к удалённому соединению RMI. Обычно такие подключения создаются с помощью JMXConnectorFactory. Однако специализированные приложения могут использовать этот класс напрямую, например, со RMIServer -заглушкой, полученной без использования JNDI.

С момента:
1.5
См. также:
  • Сериализованная форма

Краткое описание полей

Поля, объявленные в интерфейсе javax.management.remote.JMXConnector

CREDENTIALS

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

Конструктор Описание
RMIConnector(JMXServiceURL url, Map<String,?> environment)
Создаёт RMIConnector, который подключит сервер RMI-соединения по заданному адресу.
RMIConnector(RMIServer rmiServer, Map<String,?> environment)
Создаёт RMIConnector с помощью заданной RMI-заглушки.

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

Модификатор и тип Метод Описание
void addConnectionNotificationListener(NotificationListener listener, NotificationFilter filter, Object handback)
Добавляет слушателя, который будет уведомлён об изменениях статуса подключения.
void close()
Закрывает клиентское подключение к серверу.
void connect()
Устанавливает подключение к серверу соединения.
void connect(Map<String,?> environment)
Устанавливает подключение к серверу соединения.
JMXServiceURL getAddress()
Адрес этого соединения.
String getConnectionId()
Получает идентификатор этого подключения от сервера соединения.
MBeanServerConnection getMBeanServerConnection()
Возвращает объект MBeanServerConnection, представляющий удалённый сервер MBean.
void removeConnectionNotificationListener(NotificationListener listener)
Удаляет слушателя из списка, который будет уведомлён об изменениях статуса.
void removeConnectionNotificationListener(NotificationListener listener, NotificationFilter filter, Object handback)
Удаляет слушателя из списка, который будет уведомлён об изменениях статуса.
String toString()
Возвращает строковое представление этого объекта.

Методы, объявленные в классе java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

Методы, объявленные в интерфейсе javax.management.remote.JMXConnector

getMBeanServerConnection

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

RMIConnector

public RMIConnector(JMXServiceURL url, Map<String,?> environment)

Создаёт RMIConnector, который подключит сервер RMI-соединения к указанному адресу.

Адрес может ссылаться непосредственно на сервер соединения, используя следующий синтаксис:

 service:jmx:rmi://[host[:port]]/stub/encoded-stub
 

(Здесь квадратные скобки [] не являются частью адреса, но указывают, что хост и порт необязательны.)

Адрес может указывать местоположение RMI-заглушки через JNDI, используя следующий синтаксис:

 service:jmx:rmi://[host[:port]]/jndi/jndi-name
 

Реализация также может распознавать дополнительные синтаксические конструкции адресов, например:

 service:jmx:myprotocolname://[host[:port]]/stub/encoded-stub
 
Параметры:
url - адрес сервера RMI-соединения.
environment - дополнительные атрибуты, определяющие способ подключения. Для адресов на основе JNDI эти атрибуты могут содержать атрибуты JNDI, распознаваемые InitialContext. Этот параметр может быть null, что эквивалентно пустому Map.
Исключения:
IllegalArgumentException - если url равно null.

RMIConnector

public RMIConnector(RMIServer rmiServer, Map<String,?> environment)

Создаёт RMIConnector, используя указанную RMI-заглушку.

Параметры:
rmiServer - RMI-заглушка, представляющая сервер RMI-соединения.
environment - дополнительные атрибуты, определяющие способ подключения. Этот параметр может быть null, что эквивалентно пустому Map.
Исключения:
IllegalArgumentException - если rmiServer равно null.

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

toString

public String toString()

Возвращает строковое представление этого объекта. В общем случае метод toString возвращает строку, которая "текстуально представляет" этот объект. Результат должен быть кратким, но информативным представлением, удобным для чтения человеком.

Переопределяет:
toString в классе Object
Возвращает:
строковое представление этого объекта.

getAddress

public JMXServiceURL getAddress()

Адрес этого соединения.

Установлено:
getAddress в интерфейсе JMXAddressable
Возвращает:
адрес этого соединения или null, если его нет.
С тех пор:
1.6

connect

public void connect() throws IOException
Описание, скопированное из интерфейса: JMXConnector

Устанавливает соединение с сервером соединения. Этот метод эквивалентен connect(null).

Установлено:
connect в интерфейсе JMXConnector
Исключения:
IOException - если соединение не удалось установить из-за проблемы с общением

connect

public void connect(Map<String,?> environment) throws IOException
Описание, скопированное из интерфейса: JMXConnector

Устанавливает соединение с сервером соединения.

Если connect уже был успешно вызван для этого объекта, повторный вызов не окажет никакого влияния. Однако, если JMXConnector.close() был вызван после connect, новый connect вызовет IOException.

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

Установлено:
connect в интерфейсе JMXConnector
Параметры:
environment - свойства подключения. Свойства в этом отображении переопределяют свойства в отображении, указанном при создании JMXConnector, если таковые имеются. Этот параметр может быть null, что эквивалентно пустому отображению.
Исключения:
IOException - если соединение не удалось установить из-за проблемы с общением

getConnectionId

public String getConnectionId() throws IOException
Описание, скопированное из интерфейса: JMXConnector

Получает идентификатор этого подключения от сервера соединения. Для данного сервера соединения каждое подключение будет иметь уникальный идентификатор, который не изменяется в течение времени жизни соединения.

Установлено:
getConnectionId в интерфейсе JMXConnector
Возвращает:
уникальный идентификатор этого подключения. Он совпадает с идентификатором, который сервер соединения включает в свои JMXConnectionNotification. package description описывает соглашения для идентификаторов подключений.
Исключения:
IOException - если идентификатор подключения получить невозможно, например, потому что подключение закрыто или разорвано.

getMBeanServerConnection

public MBeanServerConnection getMBeanServerConnection() throws IOException
Описание, скопированное из интерфейса: JMXConnector

Возвращает объект MBeanServerConnection, представляющий удалённый сервер MBean. Для данного JMXConnector два успешных вызова этого метода обычно возвращают один и тот же объект MBeanServerConnection, хотя это и не требуется.

Для каждого метода в возвращаемом объекте MBeanServerConnection вызов метода приводит к вызову соответствующего метода на удалённом сервере MBean. Возвращаемое значение метода сервера MBean является значением, возвращаемым клиенту. Если метод сервера MBean вызывает Exception, то тот же Exception будет виден клиенту. Если метод сервера MBean или попытка его вызова вызывает Error, то Error оборачивается в JMXServerErrorException, который виден клиенту.

Установлено:
getMBeanServerConnection в интерфейсе JMXConnector
Возвращает:
объект, реализующий интерфейс MBeanServerConnection, перенаправляя его методы на удалённый сервер MBean.
Исключения:
IOException - если невозможно создать действительный MBeanServerConnection, например, потому что соединение с удалённым сервером MBean ещё не установлено (методом connect), или оно закрыто, или разорвано.

addConnectionNotificationListener

public void addConnectionNotificationListener(NotificationListener listener, NotificationFilter filter, Object handback)
Описание, скопированное из интерфейса: JMXConnector

Добавляет слушателя, который будет уведомляться об изменениях в статусе подключения. Слушатель получит уведомления типа JMXConnectionNotification. Реализация может отправлять и другие типы уведомлений.

С помощью этого метода можно добавить любое количество слушателей. Один и тот же слушатель можно добавить более одного раза с одинаковыми или разными значениями для фильтра и обратной связи. Дубликаты не обрабатываются специально. Например, если слушатель зарегистрирован дважды без фильтра, то его метод handleNotification будет вызываться дважды для каждого уведомления.

Установлено:
addConnectionNotificationListener в интерфейсе JMXConnector
Параметры:
listener - слушатель для получения уведомлений о статусе подключения.
filter - фильтр для выбора уведомлений, которые должны быть переданы слушателю, или null, если должны быть переданы все уведомления.
handback - объект, который будет передан слушателю вместе с каждым уведомлением. Может быть null.
См. также:
  • JMXConnector.removeConnectionNotificationListener(javax.management.NotificationListener)
  • NotificationBroadcaster.addNotificationListener(javax.management.NotificationListener, javax.management.NotificationFilter, java.lang.Object)

removeConnectionNotificationListener

public void removeConnectionNotificationListener(NotificationListener listener) throws ListenerNotFoundException
Описание скопировано из интерфейса: JMXConnector

Удаляет слушателя из списка, чтобы получать уведомления об изменениях состояния. Слушатель должен быть предварительно добавлен. Если существует более одного совпадающего слушателя, все они удаляются.

Указано в:
removeConnectionNotificationListener в интерфейсе JMXConnector
Параметры:
listener — слушатель, который будет получать уведомления о статусе подключения.
Исключения:
ListenerNotFoundException — если слушатель не зарегистрирован в данном JMXConnector.
См. также:
  • JMXConnector.removeConnectionNotificationListener(NotificationListener, NotificationFilter, Object)
  • JMXConnector.addConnectionNotificationListener(javax.management.NotificationListener, javax.management.NotificationFilter, java.lang.Object)
  • NotificationEmitter.removeNotificationListener(javax.management.NotificationListener, javax.management.NotificationFilter, java.lang.Object)

removeConnectionNotificationListener

public void removeConnectionNotificationListener(NotificationListener listener, NotificationFilter filter, Object handback) throws ListenerNotFoundException
Описание скопировано из интерфейса: JMXConnector

Удаляет слушателя из списка, чтобы получать уведомления об изменениях состояния. Слушатель должен быть предварительно добавлен с теми же тремя параметрами. Если существует более одного совпадающего слушателя, удаляется только один.

Указано в:
removeConnectionNotificationListener в интерфейсе JMXConnector
Параметры:
listener — слушатель, который будет получать уведомления о статусе подключения.
filter — фильтр для выбора уведомлений, которые должны быть доставлены слушателю. Может быть null.
handback — объект, который будет передан слушателю вместе с каждым уведомлением. Может быть null.
Исключения:
ListenerNotFoundException — если слушатель не зарегистрирован в этом JMXConnector, или не зарегистрирован с заданным фильтром и возвращаемым значением.
См. также:
  • JMXConnector.removeConnectionNotificationListener(NotificationListener)
  • JMXConnector.addConnectionNotificationListener(javax.management.NotificationListener, javax.management.NotificationFilter, java.lang.Object)
  • NotificationEmitter.removeNotificationListener(javax.management.NotificationListener, javax.management.NotificationFilter, java.lang.Object)

close

public void close() throws IOException
Описание скопировано из интерфейса: JMXConnector

Закрывает клиентское подключение к серверу. Любой текущий или новый запрос, использующий JMXConnector.getMBeanServerConnection(), вернёт IOException.

Если close уже был успешно вызван для этого объекта, повторный вызов не имеет эффекта. Если close никогда не вызывался или был вызван, но сгенерировал исключение, будет предпринята попытка закрыть подключение. Эта попытка может быть успешной, в этом случае close вернётся нормально, или может сгенерировать исключение.

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

Указано в:
close в интерфейсе AutoCloseable
Указано в:
close в интерфейсе Closeable
Указано в:
close в интерфейсе JMXConnector
Исключения:
IOException — если подключение нельзя закрыть корректно. Если это исключение возникает, неизвестно, было ли закрыто серверное окончание соединения корректно.

© 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.rmi/javax/management/remote/rmi/RMIConnector.html

Spec-Zone.ru

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