

Exception発生時のStackTraceをString変数に格納してエラー時のログ出力等の処理に使用したいと思っており、StackTraceをStringに格納する方法で思案しております。JDK1.4であればgetStackTrace()等が使えそうですが、当方はJDK1.3を使用しており、1.4から実装されたgetStackTrace()は使用できないために独自にコーディングする必要があると思っております。
なにかよい方法はないでしょうか。Stringは配列になってももちろんかまいません。サンプルロジックや参考HP等を紹介していただきたいと思っております。
よろしくお願いいたします。
No.1ベストアンサー
- 回答日時:
StringWriterをラップするPrintWriterを作って、printStackTrace(PrintWriter s)で
出力すれば?早速のご回答ありがとうございます。
ご回答の内容と、TOMCATソースのスタック出力方法を
参考にして以下のようなロジックで対応できました。
CharArrayWriter buf = new CharArrayWriter();
PrintWriter writer = new PrintWriter(buf);
exp.printStackTrace(writer);
Throwable rootCause = exp.getRootCause();
if (rootCause != null) {
writer.println("----- Root Cause -----");
rootCause.printStackTrace(writer);
}
System.out.println("writer.toString:" + buf.toString());
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
System.err. printlnとSystem.o...
-
System.out.printlnの出力先
-
system.out.printが出力されない
-
switch分が機能しません。
-
テキストエリアで改行する
-
flush()とclose()について
-
Javaで改行などが出来ないのです。
-
Log4jで機能毎に別ファイルへ出...
-
Javaでの改行コード
-
VBAでEUC-JPのHTMLソースを取得...
-
Javaの文字コード変換方法
-
Tomcatが無応答となる現象が起...
-
1~100までの数字を表示し、か...
-
java for文、if文を使っての三角形
-
一定のスペースを空けて端を揃...
-
ログを残す
-
C言語 重複しない4ケタの乱数...
-
JAVAのfor文で困っています。
-
オブジェクトの中のプロパティ...
-
javaで質問です。 文字列2023/2...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
System.err. printlnとSystem.o...
-
flush()とclose()について
-
System.out.printlnの出力先
-
system.out.printが出力されない
-
Log4jで機能毎に別ファイルへ出...
-
1~100までの数字を表示したい
-
1~100までの数字を表示し、か...
-
一定のスペースを空けて端を揃...
-
Javaで改行などが出来ないのです。
-
テキストエリアで改行する
-
Eclipseのコンソールを常に表示...
-
InputStreamはreadが1回しかで...
-
Tomcatが無応答となる現象が起...
-
VBAでEUC-JPのHTMLソースを取得...
-
JavaScriptの変数をjavaのメソ...
-
java for文、if文を使っての三角形
-
switch分が機能しません。
-
Javaで任意のパスへ任意のファ...
-
tomcatのstdout.logを停止したい。
-
JavaScriptでcgiの戻り値を受け...
おすすめ情報