Класс 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 |
Создаёт 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() |
Возвращает строковое представление этого объекта. |
Методы, объявленные в классе 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 возвращает строку, которая "текстуально представляет" этот объект. Результат должен быть кратким, но информативным представлением, удобным для чтения человеком.
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. - См. также:
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Закрывает клиентское подключение к серверу. Любой текущий или новый запрос, использующий 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