Класс RMIConnector
- Все реализуемые интерфейсы:
Closeable, Serializable, AutoCloseable, JMXAddressable, JMXConnector
public class RMIConnector extends Object implements JMXConnector, Serializable, JMXAddressable
Подключение к удалённому коннектору RMI. Обычно такие подключения устанавливаются с помощью JMXConnectorFactory. Однако специализированные приложения могут использовать этот класс напрямую, например с заглушкой RMIServer, полученной без обращения к JNDI.
- Начиная с:
- 1.5
- См. также:
Краткое описание полей
Поля, объявленные в интерфейсе JMXConnector
CREDENTIALS
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
RMIConnector |
Создаёт RMIConnector, который подключается к серверу коннектора RMI по указанному адресу. |
RMIConnector |
Создаёт RMIConnector с помощью указанной заглушки RMI. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
addConnectionNotificationListener |
Добавляет слушателя для получения уведомлений об изменениях состояния подключения. |
void |
close() |
Закрывает клиентское подключение к серверу. |
void |
connect() |
Устанавливает подключение к серверу коннектора. |
void |
connect |
Устанавливает подключение к серверу коннектора. |
JMXServiceURL |
getAddress() |
Адрес этого коннектора. |
String |
getConnectionId() |
Получает идентификатор этого подключения от сервера коннектора. |
MBeanServerConnection |
getMBeanServerConnection() |
Возвращает объект MBeanServerConnection, представляющий удалённый сервер MBean. |
void |
removeConnectionNotificationListener |
Удаляет слушателя из списка получающих уведомления об изменениях состояния. |
void |
removeConnectionNotificationListener |
Удаляет слушателя из списка получающих уведомления об изменениях состояния. |
String |
toString() |
Возвращает строковое представление этого объекта. |
Методы, объявленные в классе Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Методы, объявленные в интерфейсе 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, что эквивалентно пустой карте. - Вызывает:
-
IllegalArgumentException— еслиurlимеет значение null.
RMIConnector
public RMIConnector(RMIServer rmiServer, Map<String,?> environment)
Создаёт RMIConnector с помощью указанной заглушки RMI.
- Параметры:
-
rmiServer— заглушка RMI, представляющая сервер коннектора RMI. -
environment— дополнительные атрибуты, задающие способ установления подключения. Параметр может иметь значение null, что эквивалентно пустой карте. - Вызывает:
-
IllegalArgumentException— еслиrmiServerимеет значение null.
Подробное описание методов
toString
public String toString()
Возвращает строковое представление этого объекта. В общем случае метод toString возвращает строку, которая «текстуально представляет» этот объект. Результат должен быть кратким, но информативным и удобным для чтения.
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, повторный вызов не повлияет на его состояние. Однако если после вызова connect был вызван метод JMXConnector.close(), новый вызов 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, оно оборачивается в JMXServerErrorException, которое получает клиент: Error.
- Определён в:
-
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. - См. также:
removeConnectionNotificationListener
public void removeConnectionNotificationListener(NotificationListener listener) throws ListenerNotFoundException
JMXConnectorУдаляет слушателя из списка получающих уведомления об изменениях состояния. Слушатель должен быть предварительно добавлен. Если совпадающих слушателей несколько, удаляются все.
- Определён в:
-
removeConnectionNotificationListenerв интерфейсеJMXConnector - Параметры:
-
listener— слушатель, получающий уведомления о состоянии подключения. - Вызывает:
-
ListenerNotFoundException— если слушатель не зарегистрирован в этомJMXConnector. - См. также:
removeConnectionNotificationListener
public void removeConnectionNotificationListener(NotificationListener listener, NotificationFilter filter, Object handback) throws ListenerNotFoundException
JMXConnectorУдаляет слушателя из списка получающих уведомления об изменениях состояния. Слушатель должен быть предварительно добавлен с теми же тремя параметрами. Если совпадающих слушателей несколько, удаляется только один.
- Определён в:
-
removeConnectionNotificationListenerв интерфейсеJMXConnector - Параметры:
-
listener— слушатель, получающий уведомления о состоянии подключения. -
filter— фильтр для выбора уведомлений, доставляемых слушателю. Может иметь значение null. -
handback— объект, передаваемый слушателю вместе с каждым уведомлением. Может иметь значение null. - Вызывает:
-
ListenerNotFoundException— если слушатель не зарегистрирован в этомJMXConnectorили зарегистрирован с другим фильтром либо объектом обратной передачи. - См. также:
close
public void close() throws IOException
JMXConnectorЗакрывает клиентское подключение к серверу. Любой выполняющийся или новый запрос с использованием MBeanServerConnection, возвращённого методом 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://docs.oracle.com/en/java/javase/25/docs/api/java.management.rmi/javax/management/remote/rmi/RMIConnector.html