0

Java クライアント コードから URL への HTTP POST を実行しようとしています。標準のプレーンなスタンドアロン Java クラスですが、次のエラーが繰り返し発生します。私はネットで検索しましたが、同じことに対する適切な解決策を見つけることができませんでした。私は以下のすべての情報を提供しました。

以下は私が得ているエラーです。

PostMethod filePost = new PostMethod(targetURL); 

filePost.getParams().setBooleanParameter(HttpMethodParams.USE_EXPECT_CONTINUE, false);

Part[] parts = {new FilePart(targetFile.getName(), targetFile)};

filePost.setRequestEntity(new MultipartRequestEntity(parts, filePost.getParams()));

HttpClient client = new HttpClient(); 

client.getHttpConnectionManager().getParams().setConnectionTimeout(8000); 

int status = client.executeMethod(filePost)

java.net.SocketException: 接続のリセット

    at java.net.SocketInputStream.read(SocketInputStream.java:185)
    at java.io.BufferedInputStream.fill(BufferedInputStream.java:235)
    at java.io.BufferedInputStream.read(BufferedInputStream.java:254)
    at org.apache.commons.httpclient.HttpParser.readRawLine(HttpParser.java:78)
    at org.apache.commons.httpclient.HttpParser.readLine(HttpParser.java:106)
    at org.apache.commons.httpclient.HttpConnection.readLine(HttpConnection.java:1116)
    at org.apache.commons.httpclient.HttpMethodBase.readStatusLine(HttpMethodBase.java:1973)
    at org.apache.commons.httpclient.HttpMethodBase.readResponse(HttpMethodBase.java:1735)
    at org.apache.commons.httpclient.HttpMethodBase.execute(HttpMethodBase.java:1098)
    at org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMethodDirector.java:398)
    at org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:171)
    at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:397)
    at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:323)

コードの問題点と、毎回この接続タイムアウトが発生する理由を教えてください。私の仕事に非常に悪い影響を与えているので、この問題の解決策を見つけるのを手伝ってくれませんか。

ありがとう

4

1 に答える 1

0

タイムアウトは通常、サーバーを適切に構成していない場合に発生します (プロトコル/IP/ポート)。ブラウザからリクエストできますか?ファイアウォールの問題はありますか?

于 2012-09-10T08:49:45.800 に答える