2011-07-11 6 views
2

クライアントAがサーバーBに接続しているときにサーバーBにjava.net.SocketTimeoutExceptionが表示されています。理由は考えられません。クライアントがサーバーにデータを送信すると、サーバーはこの例外をスローします。どのようにしてこの問題のトラブルシューティングを行いますか?SocketTimeoutExceptionをデバッグするには?

現在のところ、これは1回しか起こっていないことに注意してください。これが再現可能かどうかはわかりません。テストを再度設定しようとしました。

答えて

0

タイムアウト時間内に受信者にデータが到着しませんでした。それだけで意味があります。デバッグすると、送信されたと思われるデータが送信されなかった理由を知ることができます。たとえば、flush()が欠けています。

0

ユーザーが3Gまたは2Gネットワ​​ークを使用していたときも同じ問題がありました。それは、弱いインターネット信号のためにサーバーにリクエストを送信し、接続を確立できないことを意味します。あなたは、接続

URLConnection connection; 
int timeout = 30 * 1000; 
connection.setConnectTimeout(timeout); 
connection.setReadTimeout(timeout); 

にタイムアウトを増やすことができますしかし、あなたはweaaak weeeaaaakインターネットconnectionを持っている場合、タイムアウトはあなたを助けていません。 私はちょうどWebServiceの1つのtestFunctionを作成しました。または、をserverにテストする前に別の必要な関数を呼び出すと、SockectTimeoutExceptionが呼び出されました。ユーザ通知に報告するだけです。"弱いインターネット接続! "

関連する問題