2

私はこの状況に陥っています。CentOS でサーバーを実行しています (CentOS は仮想マシンの VMware にあります)。ホスト (win7) には、CentOS 上のサーバーへの GET メソッドを作成する必要がある Java プログラムがあります。ホストと仮想マシン間の接続を管理しましたが、CentOS のブラウザーと Java プログラム、およびホスト (win7) のブラウザーから動作しますが、必要なホストの Java プログラムからは動作しません。仮想マシンをオフにしても、タイムアウト例外が発生します。win7 でファイアウォールをオフにしましたが、管理者権限がないため、CentOS でオフにできません。

これはGETメソッドの私のJavaコードです(192.168.11.128は仮想マシンのIPです):

private static void getMethod(){
    // Create a method instance.
    GetMethod method = new GetMethod("http://192.168.11.128");

    // Provide custom retry handler is necessary
    method.getParams().setParameter(HttpMethodParams.RETRY_HANDLER,
            new DefaultHttpMethodRetryHandler(3, false));

    try {
      // Execute the method.
      int statusCode = client.executeMethod(method);

      if (statusCode != HttpStatus.SC_OK) {
        System.err.println("Method failed: " + method.getStatusLine());
      }

      // Read the response body.
      byte[] responseBody = method.getResponseBody();

      // Deal with the response.
      // Use caution: ensure correct character encoding and is not binary data
      System.out.println(new String(responseBody));

    } catch (HttpException e) {
      System.err.println("Fatal protocol violation: " + e.getMessage());
      e.printStackTrace();
    } catch (IOException e) {
      System.err.println("Fatal transport error: " + e.getMessage());
      e.printStackTrace();
    } finally {
      // Release the connection.
      method.releaseConnection();
    }
}

助けてくれてありがとう!

4

0 に答える 0