// exceptions/LoggingExceptions.java // (c)2016 MindView LLC: see Copyright.txt // We make no guarantees that this code is fit for any purpose. // Visit http://mindviewinc.com/Books/OnJava/ for more book information. // An exception that reports through a Logger. import java.util.logging.*; import java.io.*; class LoggingException extends Exception { private static Logger logger = Logger.getLogger("LoggingException"); public LoggingException() { StringWriter trace = new StringWriter(); printStackTrace(new PrintWriter(trace)); logger.severe(trace.toString()); } } public class LoggingExceptions { public static void main(String[] args) { try { throw new LoggingException(); } catch(LoggingException e) { System.err.println("Caught " + e); } try { throw new LoggingException(); } catch(LoggingException e) { System.err.println("Caught " + e); } } } /* Output: ___[ Error Output ]___ Jun 15, 2015 3:47:40 PM LoggingException SEVERE: LoggingException at LoggingExceptions.main(LoggingExceptions.java:19) Caught LoggingException Jun 15, 2015 3:47:40 PM LoggingException SEVERE: LoggingException at LoggingExceptions.main(LoggingExceptions.java:24) Caught LoggingException */