Исключение Java Socket при попытке доступа к веб-службе .NET WCF на IIS - PullRequest
0 голосов
/ 10 марта 2010

Когда я вызываю метод службы, у меня происходит 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 Ответ

2 голосов
/ 10 марта 2010

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

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

...