Jax-ws java.net.ConnectException: соединение отказано - PullRequest
1 голос
/ 12 мая 2011

У меня возникла странная проблема с сетевым подключением к веб-службе, работающей на glassfish, из java-клиента, работающего на tomcat, с использованием JAX-WS (Metro).Вот сценарий ...

  • Оба сервера работают на моей локальной машине.
  • Если я настраиваю клиент для подключения к конечной точке WS с использованием 127.0.0.1, запрос работает нормально.
  • Если я настраиваю клиент для подключения к конечной точке WS с использованием моего IP-адреса, янемедленно получить java.net.ConnectException: соединение отказано.То же самое происходит, если я использую свое имя хоста.

Странно то, что если я получаю конечную точку от SoapUI, запрос работает нормально, если используется 127.0.0.1, мой IP-адрес или имя хоста.

Вот исключение, которое я получаю ...

java.net.ConnectException: Connection refused
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
at java.net.Socket.connect(Socket.java:529)
at java.security.AccessController.doPrivileged(Native Method)
at com.sun.xml.ws.transport.http.client.HttpClientTransport.getOutput(HttpClientTransport.java:120)
at com.sun.xml.ws.transport.http.client.HttpTransportPipe.process(HttpTransportPipe.java:256)
at com.sun.xml.ws.transport.http.client.HttpTransportPipe.processRequest(HttpTransportPipe.java:184)
at com.sun.xml.ws.transport.DeferredTransportPipe.processRequest(DeferredTransportPipe.java:137)
at com.sun.xml.ws.api.pipe.Fiber.__doRun(Fiber.java:641)
at com.sun.xml.ws.api.pipe.Fiber._doRun(Fiber.java:600)
at com.sun.xml.ws.api.pipe.Fiber.doRun(Fiber.java:585)
at com.sun.xml.ws.api.pipe.Fiber.runSync(Fiber.java:482)
at com.sun.xml.ws.client.Stub.process(Stub.java:323)
at com.sun.xml.ws.client.sei.SEIStub.doProcess(SEIStub.java:161)
at com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:113)
at com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:93)
at com.sun.xml.ws.client.sei.SEIStub.invoke(SEIStub.java:144)
at $Proxy51.listAttributeTypes(Unknown Source)
at com.myapp.store.service.client.JaxWsProductAdminServiceClient.listAttributeTypes(JaxWsProductAdminServiceClient.java:71)
at com.myapp.admintool.ProductAttributeController$_closure1.doCall(ProductAttributeController.groovy:26)
at com.myapp.admintool.ProductAttributeController$_closure1.doCall(ProductAttributeController.groovy)
at java.lang.Thread.run(Thread.java:680)

Любые мысли или указатели приветствуются!

Ответы [ 2 ]

1 голос
/ 27 октября 2015

Я видел аналогичную проблему при запуске веб-службы JAX-WS на компьютере linux с записью в /etc/hosts, которая указывает имя хоста компьютера на localhost.

Похоже, это вызывает веб-службу JAX-WSзапускаться на http://localhost:port/endpoint и, следовательно, быть доступным только с этой машины.

0 голосов
/ 13 мая 2011

«Отказано в соединении» означает, что по указанному вами IP-порту ничего не прослушивается. Один или оба из них неверны.

...