ページの先頭行へ戻る
Enterprise Application Platform V1.1.0 OpenJDKユーザーズガイド
FUJITSU Software

3.1 スタックトレース

Javaアプリケーションで例外(java.lang.Throwableのインスタンス)がスローされた場合などに出力されるスタックトレースは、エラーが発生するまでの経緯(メソッドの呼び出し順番)が示されています。このスタックトレースを解析すると、エラーが発生した箇所と原因を確認できます。

スタックトレースの出力先

スタックトレースの出力先は、標準エラーです。通常のJavaアプリケーションの場合は、コンソールに出力されますが、Servlet/JSP/EJBアプリケーションの場合は、ログファイル(標準出力、標準エラー出力またはJava VMの出力を格納するファイルなど)に出力されます。

スタックトレースの出力方法

Javaでスローされた例外をcatch節でキャッチし、例外のprintStackTraceメソッドを実行することで、スタックトレースを出力できます。

スローされた例外をtry-catch構文で処理するメソッドがスレッドにない場合、そのスレッドは停止され、Java VMによってスタックトレースが出力されます。

ポイント

java.lang.Throwable.printStackTrace()メソッドでスタックトレースを出力する方法

try {
    SampleBMPSessionRemote bmpSessionRemote = bmpSessionHome.create();
} catch(Exception e) {
    e.printStackTrace();
}

スタックトレースの出力形式

例外クラス名: エラーメッセージ
  at クラス名.メソッド名1(ソース名:行番号)    呼び出し先
  at クラス名.メソッド名2(ソース名:行番号)
             :
             :
  at クラス名.メソッド名N(ソース名:行番号)    呼び出し元