Не удалось подключиться к реестру RMI

Я использую activemq-5.9 в Ubuntu 12.04, и было бы справедливо сказать, что я новичок в активной MQ.

Я подозреваю, что я ставлю записи в очередь, а не снимаю их с очереди, поэтому я изучаю использование JMX для соединения с моим активным брокером MQ и вижу, что происходит. Jconsole не работает.

Это сложно, потому что большинство документов о том, как это сделать, устарели, но я наконец-то приступил к выполнению списка activemq. Когда я это делаю, получается довольно длинная трассировка стека:

Connecting to JMX URL: service:jmx:rmi:///jndi/rmi://localhost:1099/jmxrmi
ERROR: java.lang.RuntimeException: Failed to execute list task. Reason: java.io.IOException: Failed to retrieve RMIServer stub: javax.naming.ServiceUnavailableException [Root exception is java.rmi.ConnectException: Connection refused to host: localhost; nested exception is: 
    java.net.ConnectException: Connection refused]
...
Caused by: java.rmi.ConnectException: Connection refused to host: localhost; nested exception is: 
    java.net.ConnectException: Connection refused
    at sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:619)
    at sun.rmi.transport.tcp.TCPChannel.createConnection(TCPChannel.java:216)
    at sun.rmi.transport.tcp.TCPChannel.newConnection(TCPChannel.java:202)
    at sun.rmi.server.UnicastRef.newCall(UnicastRef.java:342)
    at sun.rmi.registry.RegistryImpl_Stub.lookup(Unknown Source)
    at com.sun.jndi.rmi.registry.RegistryContext.lookup(RegistryContext.java:118)
    ... 21 more
Caused by: java.net.ConnectException: Connection refused
    at java.net.PlainSocketImpl.socketConnect(Native Method)
    at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:345)
    at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
    at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
    at java.net.Socket.connect(Socket.java:589)
    at java.net.Socket.connect(Socket.java:538)
    at java.net.Socket.<init>(Socket.java:434)
    at java.net.Socket.<init>(Socket.java:211)
    at sun.rmi.transport.proxy.RMIDirectSocketFactory.createSocket(RMIDirectSocketFactory.java:40)
    at sun.rmi.transport.proxy.RMIMasterSocketFactory.createSocket(RMIMasterSocketFactory.java:148)
    at sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:613)
    ... 26 more

Есть еще что-то, что я настроил неправильно? У меня нет правил брандмауэра. Я не могу думать, что еще искать.

2 ответа

Решение

Здесь нет "сбоя при извлечении заглушки RMI-сервера". Не удалось подключиться к реестру RMI. Либо он вообще не работает, либо вы ищете не тот хост или порт.

Убедитесь, что ваш реестр RMI работает. Вы можете сделать это с rmiregistry в другом терминале, если он находится в том же рабочем каталоге.

Другие вопросы по тегам