0

アプレットとサーブレットの通信用の次のコードで、「java.io.IOException:サーバーがHTTP応答コードを返しました:URLの場合は500」エラーが発生します。同じコードが長い間機能してきましたが、突然このエラーが発生しました。Tomcatのセットアップに何か問題がありますか?Tomcatログにはエラーは表示されません。例外は、このコードを指すJavaコンソールでスローされます。このエラーコードをデバッグする良い方法はありますか?

     URLConnection u = getConnection( url );
     BufferedOutputStream bo = new BufferedOutputStream( u.getOutputStream() );
     ObjectOutputStream oo = new ObjectOutputStream( bo );
     oo.writeObject( someobject );
     oo.flush();
     BufferedInputStream bi = new BufferedInputStream( u.getInputStream() ); //getting the error on this line
     ObjectInputStream oi = new ObjectInputStream( bi );
     Object a_object = oi.readObject();

どんな助けでもいただければ幸いです。

4

3 に答える 3

1

次の手順を実行します。

  • ブラウザから同じ URL を試してください。理想的には、いくつかの異なるボックスとブラウザで
  • Wireshark を使用して、ネットワーク上で何が起こっているかを確認します
  • デバッガーに対してアプレットを実行して、コードが実際に呼び出されているかどうかを確認してください。

基本的に、プロキシのようなものが邪魔になって物事を台無しにしない限り、クライアント側の問題である可能性はまったくありません. WireShark は、ネットワーク上で何が起こっているかを表示します...そして、それが実際コードに到達している場合は、サーバーで何が起こっているのか、うまくいけば Tomcat ログに記録されない理由を見つけるのにデバッグが役立ちます。

于 2010-10-22T22:00:56.003 に答える
0

Tomcat にアクセスできますか? ログを調べて、エラーの理由を見つける必要があります。

于 2010-10-23T00:14:41.377 に答える
0

500 内部サーバー エラーは、クライアントではなくサーバーのエラーです。プログラムがクライアントの場合、サーバー管理者に修正するように指示する以外に、これを修正することはできません。

于 2010-10-23T00:20:10.197 に答える