今天在用程序向Neo4j導入csv文件時,報如下錯誤:java
java.net.ConnectException: Connection refused: connect java.rmi.ConnectException: Connection refused to host: 127.0.0.1; 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.invoke(Unknown Source) at java.rmi.server.RemoteObjectInvocationHandler.invokeRemoteMethod(Unknown Source) at java.rmi.server.RemoteObjectInvocationHandler.invoke(Unknown Source) at $Proxy0.getAllSections(Unknown Source) at ccg.boccrawler.rmi.TestClient.main(TestClient.java:21)
經查明緣由後,發現這個問題實際上是由rmi服務器端程序形成的。 客戶端程序向服務端請求一個對象的時候,返回的stub對象裏面包含了服務器的hostname,客戶端的後續操做根據這個hostname來鏈接服務器端。要想知道這個hostname具體是什麼值能夠在服務器端bash中打入指令:hostname -i 若是返回的是127.0.0.1,那麼你的客戶端確定會拋如標題的異常了。bash
解決方法:服務器
先在/etc/hosts裏添加一行,而後修改/etc/sysconfig/network文件裏面的HOSTNAMEdom
如你的hosts文件原來內容tcp
127.0.0.1 localhost.localdomainspa
機器的實際IP爲192.168.57.90,則能夠添加如下內容.net
192.168.57.90 aliascode
而後修改/etc/sysconfig/network文件的HOSTNAME=aliasserver
修改後程序正常運行。對象
參考資料:http://scork520.blog.163.com/blog/static/49099202201081324215183/