Como imprimir rastreamento de pilha de uma exceção em um modelo de velocidade
-
22-08-2019 - |
Pergunta
Como imprimir o rastreamento de pilha completa de exceção usando um modelo de velocidade
O meu modelo atual tem US $ exceção como variável de modelo, que contém a exceção.
Solução
Em velocidade isto é como eu resolveu este problema.
#foreach ($i in [1..3]) #if($exception.Cause) #set($exception = $exception.Cause) #foreach($stack in $exception.getStackTrace()) $stack.toString() #end #end #end
Outras dicas
No caso de você deseja exibir o traço na saída você poderia envolver a avaliar método dentro try-catch-finally bloco. Na captura escrever o rastreamento de pilha ou apenas a mensagem da exceção ao escritor. No finalmente seção apenas liberar o escritor.
Algo como isso se me lembro bem:
StringWriter w = new StringWriter();
try {
Velocity.evaluate( context, w, "mystring", s );
} catch (Exceptions... e)
w.write(e.getMessage());
} finally {
w.flush();
}
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow