Я включил JMX-соединение на удаленном сервере Glassfish, а затем перезапустил его. Во время запуска сервер уведомлен:
Standard JMX Clients (like JConsole) can connect to JMXServiceURL:
[service:jmx:rmi:///jndi/rmi://myserver:8686/jmxrmi] for domain management purposes.
Порт 8686 открыт для подключений.
Но я не могу подключиться к серверу с помощью JConsole .. Он говорит: Ошибка подключения.
Как я могу решить эту проблему?
Заранее спасибо.
Решение состоит в том, чтобы добавить -Djava.rmi.server.hostname = в параметры JVM экземпляра GlassFish.
Насколько я понимаю, JMX использует 8686 в качестве порта для реестра RMI, но JConsole подключается к нему только для того, чтобы найти порт для использования для сервера JMX, который выделяется динамически. Возможно, вы столкнулись с проблемой блокировки брандмауэром доступа к этому другому порту. Вы можете проверить это, используя программу удаленного рабочего стола для подключения к серверу, а затем запустить JConsole локально (на сервере). Если он подключается, я уверен, что это ваша проблема.
Надеюсь это поможет...
в Windows 7 у меня возникли аналогичные проблемы, и решением было изменить адрес jmx-коннектора на 127.0.0.1 в domain.xml