|
© 2002 BEA Systems, Inc. | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--java.lang.Throwable | +--java.lang.Exception | +--com.beasys.commerce.foundation.exception.ApplicationException
The ApplicationException
class is used to signal checked business
logic exceptions to a caller. It is the base application exception class.
The ApplicationException
class is closely tied to the
MessageCatalog
. An ApplicationException
contains a log and user message that is constructed using the MessageCatalog
.
In fact, each ApplicationException
derivative should have at
least one user and log catalog message.
In the case of an EJB, the following guidelines should be followed:
According to the EJB 1.1 specification, an application exception is an exception
defined in the throws clause of the enterprise bean home and remote interfaces,
other than the RemoteException
.
A bean provider is responsible for defining application exceptions in bean
remote and home interfaces and is also responsible for throwing an appropriate
application exception from a bean method to report a business logic exception to
the client. If necessary, the bean provider should subclass the
ApplicationException
class to create package-specific application exceptions.
However, a bean provider is responsible for using the standard EJB application
exceptions (CreateException
, FinderException
,
RemoveException
, DuplicateKeyException
,
ObjectNotFoundException
) where appropriate.
Since an application exception does not, and should not, automatically mark the existing transaction (if any) for rollback, the bean provider must do one of the following before throwing the exception, in order to insure data integrity:
EJBContext.setRollbackOnly()
.
setRollbackOnly
at all costs.
If this is not possible, consider using a FatalApplicationException
.
MessageCatalog
,
FatalApplicationException
,
MessageCatalogException
, Serialized FormField Summary | |
protected java.lang.Exception |
embeddedException
The embedded exception. |
protected java.util.Stack |
logMessages
The log messages. |
protected java.util.Stack |
userMessages
The user messages. |
Constructor Summary | |
ApplicationException()
Constructs an ApplicationException with no associated message. |
|
ApplicationException(ApplicationException topException,
ApplicationException bottomException)
Constructs an ApplicationException from two source ApplicationException s
by concatinating the screen and log messages of the two source ApplicationException s. |
|
ApplicationException(java.lang.String namespace,
java.lang.String messageKey)
Class constructor taking the namespace and key of the associated catalog message. |
|
ApplicationException(java.lang.String namespace,
java.lang.String messageKey,
java.lang.Exception exception)
Class constructor taking the namespace and key of the associated catalog message and an embedded exception. |
|
ApplicationException(java.lang.String namespace,
java.lang.String messageKey,
java.lang.Object argument)
Class constructor taking the namespace and key of the associated catalog message and a message parameter substitution argument. |
|
ApplicationException(java.lang.String namespace,
java.lang.String messageKey,
java.lang.Object[] arguments)
Class constructor taking the namespace and key of the associated catalog message and message parameter substitution arguments. |
|
ApplicationException(java.lang.String namespace,
java.lang.String messageKey,
java.lang.Object[] arguments,
java.lang.Exception exception)
Class constructor taking the namespace and key of the associated catalog message, message parameter substitution arguments, and an embedded exception. |
|
ApplicationException(java.lang.String namespace,
java.lang.String messageKey,
java.lang.Object argument,
java.lang.Exception exception)
Class constructor taking the namespace and key of the associated catalog message, message parameter substitution argument, and an embedded exception. |
Method Summary | |
void |
addLogMessage(java.lang.String namespace,
java.lang.String messageKey)
|
void |
addLogMessage(java.lang.String namespace,
java.lang.String messageKey,
java.lang.Object argument)
|
void |
addLogMessage(java.lang.String namespace,
java.lang.String messageKey,
java.lang.Object[] arguments)
|
void |
addMessage(java.lang.String namespace,
java.lang.String messageKey)
|
void |
addMessage(java.lang.String namespace,
java.lang.String messageKey,
java.lang.Object argument)
|
void |
addMessage(java.lang.String namespace,
java.lang.String messageKey,
java.lang.Object[] arguments)
|
void |
addUserMessage(java.lang.String namespace,
java.lang.String messageKey)
|
void |
addUserMessage(java.lang.String namespace,
java.lang.String messageKey,
java.lang.Object argument)
|
void |
addUserMessage(java.lang.String namespace,
java.lang.String messageKey,
java.lang.Object[] arguments)
|
java.lang.Exception |
getEmbeddedException()
|
java.lang.String |
getLocalizedMessage()
Returns the user message associated with this exception. |
java.lang.String |
getLogMessage()
|
java.util.Iterator |
getLogMessages()
|
java.lang.String |
getMessage()
Returns the user message associated with this exception. |
java.lang.String |
getUserMessage()
|
java.util.Iterator |
getUserMessages()
|
java.lang.String |
toString()
Returns a string representation of this exception. |
Methods inherited from class java.lang.Throwable |
fillInStackTrace,
printStackTrace,
printStackTrace,
printStackTrace |
Methods inherited from class java.lang.Object |
clone,
equals,
finalize,
getClass,
hashCode,
notify,
notifyAll,
wait,
wait,
wait |
Field Detail |
protected java.lang.Exception embeddedException
protected java.util.Stack logMessages
protected java.util.Stack userMessages
Constructor Detail |
public ApplicationException()
ApplicationException
with no associated message.public ApplicationException(ApplicationException topException, ApplicationException bottomException)
ApplicationException
from two source ApplicationException
s
by concatinating the screen and log messages of the two source ApplicationException
s.
The messages of the first ApplicationException
will preceed those of the second in the
constructed ApplicationException
. Furthermore, the new ApplicationException
will have the embedded exception of the first ApplicationException
associated with it.
ApplicationException
- topExceptionApplicationException
- bottomExceptionpublic ApplicationException(java.lang.String namespace, java.lang.String messageKey)
namespace
- The associated catalog message namespace.messageKey
- The associated catalog message key.public ApplicationException(java.lang.String namespace, java.lang.String messageKey, java.lang.Exception exception)
namespace
- The associated catalog message namespace.messageKey
- The associated catalog message key.exception
- The embedded exception.public ApplicationException(java.lang.String namespace, java.lang.String messageKey, java.lang.Object argument)
namespace
- The associated catalog message namespace.messageKey
- The associated catalog message key.argument
- The message parameter substitution argument.public ApplicationException(java.lang.String namespace, java.lang.String messageKey, java.lang.Object argument, java.lang.Exception exception)
namespace
- The associated catalog message namespace.messageKey
- The associated catalog message key.argument
- The message parameter substitution argument.exception
- The embedded exception.public ApplicationException(java.lang.String namespace, java.lang.String messageKey, java.lang.Object[] arguments)
namespace
- The associated catalog message namespace.messageKey
- The associated catalog message key.arguments
- The message parameter substitution arguments.public ApplicationException(java.lang.String namespace, java.lang.String messageKey, java.lang.Object[] arguments, java.lang.Exception exception)
namespace
- The associated catalog message namespace.messageKey
- The associated catalog message key.arguments
- The message parameter substitution arguments.exception
- The embedded exception.Method Detail |
public java.lang.Exception getEmbeddedException()
public java.lang.String getLogMessage()
public java.util.Iterator getLogMessages()
public void addLogMessage(java.lang.String namespace, java.lang.String messageKey)
public void addLogMessage(java.lang.String namespace, java.lang.String messageKey, java.lang.Object argument)
public void addLogMessage(java.lang.String namespace, java.lang.String messageKey, java.lang.Object[] arguments)
public java.lang.String getUserMessage()
public java.util.Iterator getUserMessages()
public void addUserMessage(java.lang.String namespace, java.lang.String messageKey)
public void addUserMessage(java.lang.String namespace, java.lang.String messageKey, java.lang.Object argument)
public void addUserMessage(java.lang.String namespace, java.lang.String messageKey, java.lang.Object[] arguments)
public void addMessage(java.lang.String namespace, java.lang.String messageKey)
public void addMessage(java.lang.String namespace, java.lang.String messageKey, java.lang.Object argument)
public void addMessage(java.lang.String namespace, java.lang.String messageKey, java.lang.Object[] arguments)
public java.lang.String getMessage()
public java.lang.String getLocalizedMessage()
public java.lang.String toString()
|
© 2002 BEA Systems, Inc. | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |