Ho una funzione generica che consente di stampare le eccezioni (utilizzando log4j):Come visualizzare la traccia dello stack su un'eccezione rilevata?
private void _showErrorMessage(Exception e) {
log.error(e.getClass() + ": " + e.getMessage() + ": " + e.getCause() + "\n" + e.getStackTrace().toString());
}
Invece di vedere l'analisi dello stack che sto vedendo:
[Ljava.lang.StackTraceElement;@49af7e68
Come posso vedere l'analisi dello stack dell'eccezione propriamente?
aggiornamento
log.error (e) < - mostra l'errore, ma non mostra pila traccia
Chiamare 'log.error (e)' in log4j chiama la versione errata del metodo (http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/Category.html#error% 28java.lang.Object% 29). Il JavaDoc per questo metodo menziona anche questo fatto: "AVVISO Nota che passare un Throwable a questo metodo stamperà il nome del Throwable ma nessuna traccia dello stack.Per stampare una traccia dello stack usa invece il modulo error (Object, Throwable)." –
call log.error (e, e) farà il lavoro;) – Guillaume