質問

Velocityテンプレートを使用して例外の完全なスタックトレースを印刷する方法

私の現在のテンプレートには、例外を含むテンプレート変数として$例外があります。

役に立ちましたか?

解決

の速度では、これは私がこの問題を解決する方法である。

#foreach ($i in [1..3])     
   #if($exception.Cause)
           #set($exception = $exception.Cause)
           #foreach($stack in $exception.getStackTrace())
               $stack.toString()
           #end     
    #end
#end

他のヒント

の場合、あなたはのtry-catch-finallyブロック内の評価方法をラップすることができ、出力のトレースを表示したいです。キャッチでスタックトレースやライターの例外だけのメッセージを書き込みます。最後にセクションでは、単にライターをフラッシュします。

このような何か私が右覚えていれば:

StringWriter w = new StringWriter();
try {
    Velocity.evaluate( context, w, "mystring", s );
} catch (Exceptions... e)
    w.write(e.getMessage());
} finally {
    w.flush();
}
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top