È possibile aggiungere un ulteriore Appender
al numero Logger
. Utilizzare un WriterAppender per scrivere su un StringWriter
quindi si modifica il contenuto del tuo TextArea
al valore del StringWriter#toString()
Esempio di codice:
public static void main(String[] args) {
Logger logger = Logger.getLogger("logger");
Layout layout = new PatternLayout();
StringWriter stringWriter = new StringWriter();
WriterAppender writerAppender = new WriterAppender(layout, stringWriter);
logger.addAppender(writerAppender);
TextArea textArea = new TextArea();
logger.error("test");
//if(stringWriter changed){// compare to old TextArea-content?
textArea.setText(stringWriter.toString());
//}
//System.out.println(stringWriter.toString());
}
è necessario trovare un modo intelligente aggiornare il TextArea
a seconda del logLevel e se il contenuto di StringWriter
è cambiato.
Aggiornamento: viene presentata una soluzione comparabile here.
ciò che si vuole fare spettacolo? lo stacktrace? o un messaggio di errore? – Jaiwo99
voglio mostrare il Level.TRACE – praba
non vedo un modo diretto e se vuoi mostrare nella tua applicazione, puoi leggere il file e mostrarlo lì –