EJBException.java |
/* * JBoss, the OpenSource EJB server * * Distributable under LGPL license. * See terms of license at gnu.org. */ package javax.ejb; /** * The EJBException exception is thrown by an enterprise Bean instance to its * container to report that the invoked business method or callback method * could not be completed because of an unexpected error (e.g. the instance * failed to open a database connection). */ public class EJBException extends RuntimeException { private Exception causeException; /** * Constructs an EJBException with no detail message. */ public EJBException() { super(); causeException = null; } /** * Constructs an EJBException with the specified detailed message. * * @param message - The detailed message. */ public EJBException(String message) { super(message); causeException = null; } /** * Constructs an EJBException that embeds the originally thrown exception. * * @param ex - The originally thrown exception. */ public EJBException(Exception ex) { super(); causeException = ex; } /** * Constructs an EJBException with the specified message and the * originally throw exception. * * @param message - The detailed message. * @param ex - The originally thrown exception. */ public EJBException(String message, Exception ex) { super(message); causeException = ex; } /** * Obtain the exception that caused the EJBException being thrown. * * @return The originally thrown exception. */ public Exception getCausedByException() { return causeException; } /** * Obtain the detailed message for this exception and the embedded * exception if there is one. * * @return The detailed message and the originally thrown exception. */ public String getMessage() { StringBuffer s = new StringBuffer(); s.append( super.getMessage() ); if( causeException != null ) { s.append( "; CausedByException is:\n\t" ); s.append( causeException.getMessage() ); } return s.toString(); } /** * Print composite stack trace to PrintStream ps * * @param ps - The print stream. */ public void printStackTrace( java.io.PrintStream ps ) { super.printStackTrace(ps); if( causeException != null ) { causeException.printStackTrace(ps); } } /** * Print composite stack trace to System.err */ public void printStackTrace() { super.printStackTrace(); if( causeException != null ) { causeException.printStackTrace(); } } /** * Print composite stack trace to PrintWriter pw * * @param pw - The print writer. */ public void printStackTrace( java.io.PrintWriter pw ) { super.printStackTrace(pw); if( causeException != null ) { causeException.printStackTrace(pw); } } }
EJBException.java |