2012-04-19 14 views
0

のjava.lang.NullPointerExceptionが表示されないエラーを解決しようとしているコードで作業していますが、これまでに例外が送出された場合は、エラー番号が

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()); 
    } 

しかし、私は例外への参照を見つけることができません。どのように私はエラーがどこに私を示すために "キャッチ"部分を得ることができますか?

+0

スタックトレースが何を言うん:

また、あなたはzaga250が言うようにロガーを使用して例外をログに記録することができますか? – Dan

+5

* "e.printStackTrace()は何も出力しません。" –

+0

は、例外が発生しているメソッドコードを提供します。 – Shehzad

答えて

5

例外stackTraceをロガーに渡す必要があります。あなたがe.printStackTrace()を入力した場合には、

適切な方法は何か、

log.error( "メッセージ"、e)を書くことですSystem.errの

にスタックトレースを置きます。

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

+0

ありがとう、それは働いた!実際にあなたの質問に答えるようにして、「信じるのはとても難しい」と指摘してはいけません。ありがとう – Stefano

0

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

stacktraceは、標準エラーが発生するファイルに書き込まれます。

あなたはどのASを使っているのかは言わないが、そのほとんどは何らかの種類のstderr.outファイルを持っています。

log.error("errrr", e);