package de.tvo.tools; import java.sql.Timestamp; public class Exceptions { public static String createRTStackTrace(final Throwable e) { final StringBuilder stackTrace = new StringBuilder(); stackTrace.append(e.getClass().getName()); if (e.getMessage() != null && !e.getMessage().trim().isEmpty()) { stackTrace.append(": "); stackTrace.append(e.getMessage()); } stackTrace.append("

"); for (final StackTraceElement element : e.getStackTrace()) { stackTrace.append("at "); stackTrace.append(element.toString()); stackTrace.append("
"); } stackTrace.append("

"); return stackTrace.toString(); } public static String createHTMLStackTrace(final Throwable e) { final StringBuilder stackTrace = new StringBuilder(); stackTrace.append(""); stackTrace.append(e.getClass().getName()); if (e.getMessage() != null && !e.getMessage().trim().isEmpty()) { stackTrace.append(": "); stackTrace.append(e.getMessage()); } stackTrace.append("

"); for (final StackTraceElement element : e.getStackTrace()) { stackTrace.append("at "); stackTrace.append(element.toString()); stackTrace.append("
"); } stackTrace.append("

"); stackTrace.append(""); return stackTrace.toString(); } public static String createStringStackTrace(final Throwable e) { final StringBuilder stackTrace = new StringBuilder(); stackTrace.append(e.getClass().getName()); if (e.getMessage() != null && !e.getMessage().trim().isEmpty()) { stackTrace.append(": "); stackTrace.append(e.getMessage()); } for (final StackTraceElement element : e.getStackTrace()) { stackTrace.append("\tat "); stackTrace.append(element.toString()); stackTrace.append('\n'); } return stackTrace.toString(); } /** * * @return StringBuilder for further appending * Example:
* 2017-07-07 08:42:54.286 - de.geis.tools.Exceptions.main(Exceptions.java:67)hallO */ public final static StringBuilder createDebugInfos() { return new StringBuilder(new Timestamp(System.currentTimeMillis()).toString()).append(" - ").append(new Exception().getStackTrace()[1].toString()); } public final static String prettyPrintTvoException(Throwable e, boolean consolePrint){ StringBuilder builder = new StringBuilder(e.getClass().getSimpleName()); if (e.getMessage() != null) { builder.append("\t\tMessage: \"").append(e.getMessage()).append('\"'); } for (StackTraceElement petter : e.getStackTrace()) { if (petter.getClassName().startsWith("de.tvo") || petter.getClassName().startsWith("managedbeans")) { builder.append("\n\t").append(petter); } } if (consolePrint) { System.out.println(builder.toString()); } return builder.toString(); } }