Identify correct and incorrect statements or examples about application exceptions and system exceptions in entity beans, session beans, and message-driven beans.

This page discusses - Identify correct and incorrect statements or examples about application exceptions and system exceptions in entity beans, session beans, and message-driven beans.


 

Ads

Tutorials   
Chapter 5. Client View of an Entity Identify correct and incorrect statements about the Application Assembler's responsibilities, including the use of deployment descriptor elements related to transactions and the identifica Given a list of responsibilities, identify whose which are the Container's with respect to transactions, including the handling of getRollbackOnly, setRollbackOnly, getUserTransacti EJB Transactional Attributes Chapter 11. Transactions Given a list of scenarios, identify which will result in an ejbRemove method not being called on a bean instance. Given a list of responsibilities related to session beans, identify those which are the responsibility of the session bean provider and those which are the responsibility of the EJB contai Given a list of methods for a stateful or stateless session bean class, define which of the following operations can be performed from each of those methods: SessionContext interface metho Chapter 4. Session Bean Life Cycle Identify correct and incorrect statements or examples about the client view of a session bean's local and remote component interfaces. Identify the interface and method for each of the following: retrieve the session bean's remote home interface, retrieve the session bean's local component interface, determine if the sessio Match the correct description about purpose and function to which session bean type they apply: stateless, stateful, or both. Chapter 14. Security Management Given a security-related deployment descriptor tag, identify correct and incorrect statements and code related to that tag. Given a list of responsibilities, identify which belong to the deployer, bean provider, application assembler, container provider, system administrator, or any combination. From a list of responsibilities, identify which belong to the application assembler, bean provider, deployer, container provider, or system administrator. Part I. Exam Objectives Preface Identify the interfaces and methods a JMS message-driven bean must implement. Identify the use and behavior of the MessageDrivenContext interface methods. SCBCD Study Guide Given a list of responsibilities related to exceptions, identify those which are the bean provider's, and those which are the responsibility of the container provider. Be prepared to recog Given a particular method condition, identify the following: whether an exception will be thrown, the type of exception thrown, the container's action, and the client's view. Identify correct and incorrect statements or examples about application exceptions and system exceptions in entity beans, session beans, and message-driven beans. Identify correct and incorrect statements or examples about the client's view of exceptions received from an enterprise bean invocation. Identify correct and incorrect statements or examples about an entity bean's primary key and object identity. Identify the use, syntax, and behavior of, the following entity bean home method types, for Container-Managed Persistence (CMP); finder methods, create methods, remove methods, and home me Chapter 8. Entity Beans Chapter 13. Enterprise Bean Environment Chapter 2. Client View of a Session Bean Match EJB roles with the corresponding description of the role's responsibilities, where the description may include deployment descriptor information. Given a list, identify which are requirements for an EJB-jar file. Identify correct and incorrect statements or examples about the client view of a entity bean's remote component interface (EJBObject). Identify correct and incorrect conditional expressions, BETWEEN expressions, IN expressions, LIKE expressions, and comparison expressions. Identify correct and incorrect statements or examples about the purpose and use of EJB QL. Chapter 9. EJB-QL Identify correct and incorrect statements or examples about EJB programming restrictions. Chapter 1. EJB Overview Identify EJB 2.0 container requirements. Identify correct and incorrect statements or examples about the client view of an entity bean's local component interface (EJBLocalObject). Chapter 12. Exceptions Identify the use and the behavior of the ejbPassivate method in a session bean, including the responsibilities of both the container and the bean provider. Identify correct and incorrect statements about the purpose and use of the deployment descriptor elements for environment entries, EJB references, and resource manager connection factory r Chapter 10. Message-Driven Bean Component Contract Given a code listing, determine whether it is a legal and appropriate way to programmatically access a caller's security context. From a list, identify the responsibility of the container for a CMP entity bean, including but not limited to: setEntityContext, unsetEntityContext, ejbCreate, ejbPostCreate, ejbActi Identify correct and incorrect statements or examples about the rules and semantics for relationship assignment and relationship updating in a CMP bean. Chapter 7. CMP Entity Bean Life Cycle From a list, identify the purpose, behavior, and responsibilities of the bean provider for a CMP entity bean, including but not limited to: setEntityContext, unsetEntityContext, ejbC Identify correctly-implemented deployment descriptor elements for a CMP bean (including container-managed relationships).
Ads

Identify correct and incorrect statements or examples about application exceptions and system exceptions in entity beans, session beans, and message-driven beans.

Table 12.1. Handling of exceptions thrown by a business method of a bean with container-managed transaction demarcation (CMT)

Method conditionMethod exceptionContainer's actionClient's view
Bean method runs in the context of the caller's transaction. This case may happen with Required, Mandatory, and Supports attributes. APPLICATION exceptionre-throw APPLICATION exception Receives APPLICATION exception. Can attempt to continue computation in the transaction, and eventually commit the transaction (the commit would fail if the instance called setRollbackOnly()).
SYSTEM exception
  1. LOG the exception or error (to notify SYSTEM Administrator).

  2. MARK the transaction for rollback.

  3. DISCARD the instance.

  4. Throw javax.transaction. TransactionRolledbackException to REMOTE client; throw javax.ejb. TransactionRolledbackLocalException to LOCAL client.

Receives javax.transaction. TransactionRolledbackException or javax.ejb. TransactionRolledbackLocalException Continuing transaction is fruitless.
Bean method runs in the context of a transaction that the Container started immediately before dispatching the business method. This case may happen with Required and RequiresNew attributes. APPLICATION exception If the instance called setRollbackOnly(), then rollback the transaction, and re-throw APPLICATION exception. Otherwise, attempt to COMMIT the transaction, and then re-throw APPLICATION exception. Receives APPLICATION exception. If the client executes in a transaction, the client's transaction is NOT marked for rollback, and client can continue its work.
SYSTEM exception
  1. LOG the exception or error (to notify SYSTEM Administrator).

  2. ROLLBACK the container-started transaction.

  3. DISCARD the instance.

  4. Throw RemoteException to REMOTE client; throw EJBException to LOCAL client.

Receives RemoteException or EJBException. If the client executes in a transaction, the client's transaction MAY or MAY NOT be marked for rollback.
Bean method runs with an UNSPECIFIED transaction context. This case may happen with the NotSupported, Never, and Supports attributes. APPLICATION exceptionre-throw APPLICATION exception Receives APPLICATION exception. If the client executes in a transaction, the client's transaction is NOT marked for rollback, and client can continue its work.
SYSTEM exception
  1. LOG the exception or error (to notify SYSTEM Administrator).

  2. DISCARD the instance.

  3. Throw RemoteException to REMOTE client; throw EJBException to LOCAL client.

Receives RemoteException or EJBException. If the client executes in a transaction, the client's transaction MAY or MAY NOT be marked for rollback.

Table 12.2. Handling of exceptions thrown by a business method of a session with bean-managed transaction demarcation (BMT)

Bean method conditionBean method exceptionContainer's actionClient receives
Bean is STATEFUL or STATLESS Session. APPLICATION exceptionre-throw APPLICATION exception Receives APPLICATION exception.
SYSTEM exception
  1. LOG the exception or error (to notify SYSTEM Administrator).

  2. MARK for rollback a transaction that has been started, but not yet completed, by the instance.

  3. DISCARD the instance.

  4. Throw RemoteException to REMOTE client; throw EJBException to LOCAL client.

Receives RemoteException or EJBException.

Table 12.3.  Handling of exceptions thrown by a method of a message-driven bean (MDB) with container-managed transaction demarcation (CMT).

Method conditionMethod exceptionContainer's action
Bean method runs in the context of a transaction that the Container started immediately before dispatching the method. This case happens with Required attribute. SYSTEM exception
  1. LOG the exception or error (to notify SYSTEM Administrator).

  2. Rollback the container-started a transaction.

  3. DISCARD the instance.

Bean method runs with an UNSPECIFIED transaction context. This case happens with the NotSupported attribute. SYSTEM exception
  1. LOG the exception or error (to notify SYSTEM Administrator).

  2. DISCARD the instance.

Table 12.4.  Handling of exceptions thrown by a method of a message-driven bean (MDB) with bean-managed transaction demarcation (BMT).

Bean method conditionBean method exceptionContainer's action
Bean is message-driven bean (MDB) SYSTEM exception
  1. LOG the exception or error (to notify SYSTEM Administrator).

  2. MARK for rollback a transaction that has been started, but not yet completed, by the instance.

  3. DISCARD the instance.

If exception happens in callback method (EntityBean.ejbActivate(), EntityBean.ejbLoad(), EntityBean.ejbPassivate(), EntityBean.ejbStore(), EntityBean.setEntityContext(EntityContext), EntityBean.unsetEntityContext(), SessionBean.ejbActivate(), SessionBean.ejbPassivate(), SessionBean.setSessionContext(SessionContext), MessageDrivenBean.setMessageDrivenContext(MessageDrivenContext), SessionSynchronization.afterBegin(), SessionSynchronization.beforeCompletion(), and SessionSynchronization.afterCompletion(boolean)) the Container must handle all exception as follows:

  1. LOG the exception or error to bring the problem to the attention of the System Administrator.

  2. If the instance is in a transaction, mark the transaction for ROLLBACK.

  3. DISCARD the instance.

  4. If the exception or error happened during the processing of a client invoked method, throw the java.rmi.RemoteException to the client if the client is a REMOTE client or throw the javax.ejb.EJBException to the client if the client is a LOCAL client. If the instance executed IN the client's transaction, the Container should throw the javax.transaction.TransactionRolledbackException to a REMOTE client or the javax.ejb.TransactionRolledbackLocalException to a LOCAL client, because it provides more information to the client. (The client knows that it is fruitless to continue the transaction.)

If a client makes a call to a SESSION object that has been REMOVED, the Container should throw the java.rmi.NoSuchObjectException (which is a subclass of java.rmi.RemoteException) to a REMOTE client

, or the javax.ejb.NoSuchObjectLocalException to a local client.

Advertisements

Ads
Share on Google+Share on Google+

Identify correct and incorrect statements or examples about application exceptions and system exceptions in entity beans, session beans, and message-driven beans.

Posted on: April 18, 2011 If you enjoyed this post then why not add us on Google+? Add us to your Circles

Advertisements

 
Comments:0

Ads

 

Ads