私はS3サービスを管理するコマンドラインツールをコーディングしています。私のローカルマシン上で、すべてのものは、それが実行されなければならないサーバー上で動作し、次のメッセージで失敗します。接続がJavaのamazon SDKでS3サービスのために拒否されました
s3 = new AmazonS3Client(credentials,clientConf);
clientConfのみ設定します。
Error Message: Unable to execute HTTP request: Connection to http://s3.amazonaws.com refused
私は次のコードとの接続が作ります私はHTTPSに接続するための問題かもしれないと思ったが、私は同じ結果を持っています。
今、サーバは、以下の構成を有する:
Debianソースからインストール6 64ビット
LAMP
OpenSSLがソースからインストール
Javaが配布パッケージのパッケージからインストールを
これはネットワーク構成です:
auto eth0
iface eth0 inet static
address XX.XX.XX.XX
netmask 255.255.255.255
broadcast XX.XX.XX.XX (same as address)
auto eth0:0
iface eth0:0 inet static
address XX.XX.XX.XX
netmask 255.255.255.255
broadcast XX.XX.XX.XX (same as address)
auto eth0:1
iface eth0:1 inet static
address XX.XX.XX.XX
netmask 255.255.255.255
broadcast XX.XX.XX.XX (same as address)
post-up route add 10.255.255.1 dev eth0
post-up route add default gw 10.255.255.1
wget、telnet、curl、すべてが動作しますが、これ以外は、私は2つのSSLともう1つのIPを他のサイトに持っているため、3つのネットワークインターフェースを持っています。
この作業を行うためにclientConfをどのように設定する必要がありますか? Javaの問題ですか?ネットワークの問題?少なくとも、どのように私はより多くのデバッグ情報を得ることができますか?私はAmazonClientException
例外をキャッチしようとしましたが動作しません。
ありがとうございます。
よろしくお願いいたします。
は、私はこれを試してみましたが、それは、私はまだ同じ問題を抱えているS3では動作しませんようです。 –
@shadow_of__soul Hmn。それは困惑です。あなたが言うように、問題を追跡するために使用できるより多くのデバッグ情報が必要です。デバッガでクライアントを実行できますか(たとえば、IntelliJまたはEclipseが提供するデバッグ機能)、例外が発生する直前にブレークポイントを設定できますか?その場合、接続を試みるときに 'catch(Exception e)'(特に 'RuntimeException'をキャッチします)を実行するとどうなりますか?ここの標準的なアドバイスをお手伝いして申し訳ありませんが、私はあなたがまだ試したことについて良い範囲を持っていません。 – MrGomez
問題はこれがサーバーでのみ発生し、ローカルではコードが完全に機能するということです。コマンドラインからデバッガを実行する方法はありますか? (私は 'java -jar app.jar'のアプリケーションを実行しています) –