Исключение сокета Java при попытке достичь.Веб-служба NET WCF в IIS

#java #wcf #exception #web-services

#java #wcf #исключение #веб-службы

Вопрос:

Когда я вызываю метод службы, у меня Web Service Exception происходит то, что я пока не мог понять.

Проблема заключается в том, что я работаю NetBeans 6.8 против IIS 7.0 веб-службы, написанной с использованием WCF :

 javax.xml.ws.WebServiceException: java.net.SocketException: Connection reset
        at com.sun.xml.internal.ws.transport.http.client.HttpClientTransport.readResponseCodeAndMessage(HttpClientTransport.java:201)
        at com.sun.xml.internal.ws.transport.http.client.HttpTransportPipe.process(HttpTransportPipe.java:151)
        at com.sun.xml.internal.ws.transport.http.client.HttpTransportPipe.processRequest(HttpTransportPipe.java:83)
        at com.sun.xml.internal.ws.transport.DeferredTransportPipe.processRequest(DeferredTransportPipe.java:105)
        at com.sun.xml.internal.ws.api.pipe.Fiber.__doRun(Fiber.java:587)
        at com.sun.xml.internal.ws.api.pipe.Fiber._doRun(Fiber.java:546)
        at com.sun.xml.internal.ws.api.pipe.Fiber.doRun(Fiber.java:531)
        at com.sun.xml.internal.ws.api.pipe.Fiber.runSync(Fiber.java:428)
        at com.sun.xml.internal.ws.client.Stub.process(Stub.java:211)
        at com.sun.xml.internal.ws.client.sei.SEIStub.doProcess(SEIStub.java:124)
        at com.sun.xml.internal.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:98)
        at com.sun.xml.internal.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:78)
        at com.sun.xml.internal.ws.client.sei.SEIStub.invoke(SEIStub.java:107)
        at $Proxy30.getTwo(Unknown Source)
        at HighBeamWcfClient.Main.main(Main.java:28)
Caused by: java.net.SocketException: Connection reset
        at java.net.SocketInputStream.read(SocketInputStream.java:168)
        at java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
        at java.io.BufferedInputStream.read1(BufferedInputStream.java:258)
        at java.io.BufferedInputStream.read(BufferedInputStream.java:317)
        at sun.net.www.http.HttpClient.parseHTTPHeader(HttpClient.java:687)
        at sun.net.www.http.HttpClient.parseHTTP(HttpClient.java:632)
        at sun.net.www.http.HttpClient.parseHTTP(HttpClient.java:652)
        at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1072)
        at java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:373)
        at com.sun.xml.internal.ws.transport.http.client.HttpClientTransport.readResponseCodeAndMessage(HttpClientTransport.java:198)
  

Как это исправить?

Ответ №1:

«Сброс соединения» обычно означает, что кто-то / что-то между вами и сервером сбрасывает соединение или каким-то образом блокирует его. Убедитесь, что вы можете правильно подключиться к серверу через порт без каких-либо проблем и что на пути нет брандмауэров.

Очень простой тест, который вы можете выполнить, подключившись к рассматриваемому порту, — это просто подключиться к нему по telnet с помощью telnet serverhostname portnum , например telnet stackoverflow.com 80 .