java.rmi.ConnectException : Connection refused to host: localhost

标签 java rmi

所以我已经阅读了类似的问题,但我还没有找到任何我完全理解的内容。

http://www.coderanch.com/t/487650/java/java/java-rmi-ConnectException-Connection-refused

http://protegewiki.stanford.edu/wiki/Troubleshooting_Client_Server_Connections

what is RMI registry

http://docs.oracle.com/javase/7/docs/technotes/guides/rmi/faq.html#domain

我的服务器每隔几天就会崩溃,我正在尝试找出问题所在。该软件在客户提供的环境中运行,我需要知道是我们的问题还是Windows/网络的问题。

我的问题是... RMI 注册表,这是 java 创建的东西还是 Windows 中存在的东西?为什么与本地主机的连接会突然变得不可用或被拒绝?我可以做些什么来立即排除故障吗?

RMI 配置在这里:

<RMIService>
        <class>com.s.i.system.RMIService</class>
        <server name="Server">
            <host>localhost</host>
            <timeout>0</timeout>
        </server>
    </RMIService>

这是在日志中创建的错误。

2015-04-02 16:52:10,057 ERROR [main] com...........gui.initialise.ClientInitialise - java.rmi.ConnectException: Connection refused to host: localhost; nested exception is: 
java.net.ConnectException: Connection refused: connect
at sun.rmi.transport.tcp.TCPEndpoint.newSocket(Unknown Source)
at sun.rmi.transport.tcp.TCPChannel.createConnection(Unknown Source)
at sun.rmi.transport.tcp.TCPChannel.newConnection(Unknown Source)
at sun.rmi.server.UnicastRef.newCall(Unknown Source)
at sun.rmi.registry.RegistryImpl_Stub.lookup(Unknown Source)
at java.rmi.Naming.lookup(Unknown Source)
at com.s.i.system.RMIService.lookup(RMIService.java:570)
at com.s.i.system.RMIService.lookupServer(RMIService.java:377)
at com.s.i.process.RemoteRequestHandler$Dispatcher.run(RemoteRequestHandler.java:282)
at com.s.i.process.RemoteRequestHandler$Dispatcher.start(RemoteRequestHandler.java:269)
at com.s.i.process.RemoteRequestHandler.handle(RemoteRequestHandler.java:96)
at com.s.i.process.RequestDispatcher.dispatch(RequestDispatcher.java:136)
at com.s.i.client.ClientInitialiser.initialiseEnvironment(ClientInitialiser.java:498)
at com.s.i.client.ClientInitialiser.performEnvironmentInit(ClientInitialiser.java:145)
at com.s.i.client.ClientInitialiser.initialise(ClientInitialiser.java:128)
at com.s.i.client.ClientInitialiser.initialise(ClientInitialiser.java:106)
at com.s.i.gui.initialise.ClientInitialise.createInitialiser(ClientInitialise.java:136)
at com.s.i.gui.initialise.ClientInitialise.<init>(ClientInitialise.java:155)
at com.s.i.client.Client.initialise(Client.java:118)
at com.s.i.client.Client.main(Client.java:147)
Caused by: java.net.ConnectException: Connection refused: connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(Unknown Source)
at java.net.PlainSocketImpl.connectToAddress(Unknown Source)
at java.net.PlainSocketImpl.connect(Unknown Source)
at java.net.SocksSocketImpl.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at java.net.Socket.<init>(Unknown Source)
at java.net.Socket.<init>(Unknown Source)
at sun.rmi.transport.proxy.RMIDirectSocketFactory.createSocket(Unknown Source)
at sun.rmi.transport.proxy.RMIMasterSocketFactory.createSocket(Unknown Source)
... 20 more

最佳答案

RMI 注册表是 JRE 的组件,而不是 Windows 的组件。显然它正在崩溃,或者更可能的是它由于某种原因被错误地关闭。 18 年来我从未见过 RMI 注册表崩溃。

关于java.rmi.ConnectException : Connection refused to host: localhost,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29505278/

相关文章:

java - .jpg.to 替代从图像关键字获取 URL

java - 如何使用 ADAL JS 颁发的隐式授权 token 从 Web API 访问图形 API

java - 远程调用 PlayFramework 对象

java - 使用 RMI 向客户端广播消息

java - Java分布式计算平台

java - Spring 如何构造传递给 Controller ​​方法的对象?

java - java中的this指针

Javafx、Maven、Hibernate,无法在第 0 行和第 0 列处执行解码

java - 如何解决java程序中的java.rmi.ConnectException?

Apache 使用隐式重定向重写