速度テンプレートを使用して例外の完全なスタック トレースを出力する方法
現在のテンプレートには、例外を含むテンプレート変数として $exception があります。
速度テンプレートを使用して例外の完全なスタック トレースを出力する方法
現在のテンプレートには、例外を含むテンプレート変数として $exception があります。
速度では、これが私がこの問題を解決した方法です。
#foreach ([1..3] の $i) #if($exception.Cause) #set($exception = $exception.Cause) #foreach($stack in $exception.getStackTrace()) $stack.toString() #終わり #終わり #終わり
出力にトレースを表示したい場合は、評価メソッドを try-catch-finally ブロック内にラップできます。catch では、スタック トレースまたは例外のメッセージのみをライターに書き込みます。最終セクションでは、ライターをフラッシュするだけです。
私の記憶が正しければ、次のようなものです。
StringWriter w = new StringWriter();
try {
Velocity.evaluate( context, w, "mystring", s );
} catch (Exceptions... e)
w.write(e.getMessage());
} finally {
w.flush();
}