0

エラーを解決するために彼らがくれたコードで作業していますが、今までスローされた例外は、

log.error("Error saving data: " + e.toString());

は。e.printStackTrace() は何も出力しないため、正しい行を見つける方法がわかりません。関数には次の部分があります。

protected void processRequest(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {...

try {...
} catch (Exception e) {

       e.printStackTrace();
       log.error("Error al almacenar los datos de usuario: " + e.toString());
    }

しかし、途中で例外への参照が見つかりません。「キャッチ」部分を取得してエラーの場所を表示するにはどうすればよいですか?

4

2 に答える 2

5

例外 stackTrace をロガーに渡す必要があります。e.printStackTrace() と入力すると、スタック トレースが System.err に出力されます。

適切な方法は、何かを書くことです。

log.error("あなたのメッセージ",e);

log4j はオブジェクト e を処理し、ロガーに stackTrace を出力します。

于 2012-04-19T14:58:41.507 に答える
0

あなたは間違った場所を見ています。

スタック トレースは、標準エラーが出力されるファイルに書き込まれます。

どの AS を使用しているか (もしあれば) は言いませんが、ほとんどの AS には何らかの stderr.out ファイルがあります。

また、 zaga250 が言うように、ロガーを使用して例外をログに記録できます。

log.error("errrr", e );
于 2012-04-19T15:02:06.493 に答える