2012-05-01 1 views
-2

UPDATEを接続に失敗しました:これがそう署名付きアプレットソケットハンドラは、Java

ですが、私は初期化時に、それはサーバのIPに接続しようとしますアプレットを、持っています。何かのように

handler = new SocketHandler("xxx.xxx.xxx.xx", 5000); 

サーバーは、米国内にあります。クライアントが米国出身の場合は正しく動作することをテストしています(アプレットは正しくロードされます)。 クライアントが他の国のサイトを開いた場合、アプレットは読み込まれませんでした。サーバーや何かに接続できないようです。問題が何であるか、解決する方法を知っている人がいますか?国際的な使用のために異なるIPアドレスなどを使用する必要がありますか?

更新:タイムアウト接続を増やす方法はありますか?別のことは、遅い接続を使用すると、タイムアウトソケット接続を持つJavaコンソール

+0

サーバーがソースを検出しており、米国外からの接続を許可しない可能性があります。サイトとは何ですか? –

+0

@AndrewThompsonあなたはログインできないので、サイトは重要ではありません。 – Harts

+2

* "サイトは関係ありません" *これはヘルプデスクではありません。 –

答えて

1

信頼できないアプレットは、セキュリティ上の理由からダウンロードしたサーバーにのみ接続できます。だから、あなたのJavaコンソールをチェックしてください。おそらくあなたはそこにセキュリティ例外を見つけるでしょう。

その他の考えられる問題は、サーバーとクライアントの間にファイアウォールが存在することです。

私は、あなたがなぜアプレットとサーバー間のネゴシエーションにTCPソケットを使用しているのか尋ねることがありますか?なぜウェブサービスではないのですか? HTTP経由のRESTful API?少なくともこれはファイアウォールの問題を解決します。アプレットがHTTPを使って正常にダウンロードされた場合、同じプロトコルを使用してサーバーと正常に通信します。

+0

これは署名付きのアプレットです。私は、ログファイルを書き込むためにソケットを使用しています。アプレットはクライアント側にあり、サーバー側にファイルを書き込む必要があるため、ソケットを使用してオープンストリームにしてサーバーに書き込む必要があります。 – Harts