Chapter 2. Client View of a Session Bean

This page discusses - Chapter 2. Client View of a Session Bean

Chapter 2. Client View of a Session Bean

Chapter 2. Client View of a Session Bean

Identify correct and incorrect statements or examples about the client view of a session bean's local and remote home interfaces, including the code used by a client to locate a session bean's home interface.

A client locates a session bean’s home interface using JNDI. For example, the remote home interface for the Cart session bean can be located using the following code segment:

				
Context initialContext = new InitialContext(); 
CartHome cartHome = (CartHome)javax.rmi.PortableRemoteObject.narrow(
	initialContext.lookup(?java:comp/env/ejb/cart?),
	CartHome.class);
				

If the Cart session bean provides a local client view instead of a remote client view and CartHome is a local home interface, this lookup might be as follows:

				
Context initialContext = new InitialContext();
CartHome cartHome = (CartHome)
	initialContext.lookup(?java:comp/env/ejb/cart?);
				

A client can pass a remote home object reference to another application. The receiving application can use the home interface in the same way that it would use a remote home object reference obtained via JNDI.

A client can pass a local home object reference to another application through its local interface. A local home object reference cannot be passed as an argument or result of a method on an enterprise bean’s remote home or remote interface.

The REMOTE HOME interface allows a client to do the following:

  • Create a new session object.

  • Remove a session object (using bean's HANDLE).

  • Get the javax.ejb.EJBMetaData interface for the session bean. The javax.ejb.EJBMetaData interface is intended to allow application assembly tools to discover information about the session bean, and to allow loose client/server binding and client-side scripting.

  • Obtain a handle for the REMOTE home interface. The home handle can be SERIALIZED and written to stable storage. Later, possibly in a different JVM, the handle can be deserialized from stable storage and used to obtain back a reference of the remote home interface.

public interface EJBHome extends Remote {
	EJBMetaData getEJBMetaData() throws RemoteException;
	HomeHandle getHomeHandle() throws RemoteException;
	void remove(Handle handle) throws RemoteException, 
		RemoveException;
	void remove(Object primaryKey) throws RemoteException, 
		RemoveException; // only Entity EJB !!!
}	
					

The LOCAL HOME interface allows a local client to do the following:

  • Create a new session object.

public interface EJBLocalHome {
	void remove(Object primaryKey) throws RemoveException, 
			EJBException;  // only Entity EJB !!!
}					
					

EJBMetaData and HomeHandle are ONLY accessible for REMOTE HOME interfaces.

EJBHome interface extends Remote (marker) interface.

Session bean can be removed ONLY using it's handle (remote view ONLY), since it does not have primary key.

Visit http://java.boot.by  for the updates.

Tutorials

  1. Appendix A. First Appendix
  2. Second Section
  3. Third Section
  4. Part II. Appendixes
  5. From a list, identify the responsibility of the bean provider and the responsibility of the container provider for a message-driven bean.
  6. Chapter 6. Component Contract for Container-Managed Persistence (CMP)
  7. Identify correct and incorrect statements or examples about persistent relationships, remove protocols, and about the abstract schema type of a CMP entity bean.
  8. Identify the interfaces and methods a CMP entity bean must and must not implement.
  9. Match the name with a description of purpose or functionality, for each of the following deployment descriptor elements: ejb-name, abstract-schema-name, ejb-relation, ejb-relat
  10. Identify correctly-implemented deployment descriptor elements for a CMP bean (including container-managed relationships).
  11. 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
  12. Chapter 7. CMP Entity Bean Life Cycle
  13. Identify correct and incorrect statements or examples about the rules and semantics for relationship assignment and relationship updating in a CMP bean.
  14. From a list, identify the responsibility of the container for a CMP entity bean, including but not limited to: setEntityContext, unsetEntityContext, ejbCreate, ejbPostCreate, ejbActi
  15. Given a code listing, determine whether it is a legal and appropriate way to programmatically access a caller's security context.
  16. Chapter 10. Message-Driven Bean Component Contract
  17. 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
  18. 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.
  19. Chapter 12. Exceptions
  20. Identify correct and incorrect statements or examples about the client view of an entity bean's local component interface (EJBLocalObject).
  21. Identify EJB 2.0 container requirements.
  22. Chapter 1. EJB Overview
  23. Identify correct and incorrect statements or examples about EJB programming restrictions.
  24. Chapter 9. EJB-QL
  25. Identify correct and incorrect statements or examples about the purpose and use of EJB QL.
  26. Identify correct and incorrect conditional expressions, BETWEEN expressions, IN expressions, LIKE expressions, and comparison expressions.
  27. Identify correct and incorrect statements or examples about the client view of a entity bean's remote component interface (EJBObject).
  28. Given a list, identify which are requirements for an EJB-jar file.
  29. Match EJB roles with the corresponding description of the role's responsibilities, where the description may include deployment descriptor information.
  30. Chapter 2. Client View of a Session Bean
  31. Chapter 13. Enterprise Bean Environment
  32. Chapter 8. Entity Beans
  33. 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
  34. Identify correct and incorrect statements or examples about an entity bean's primary key and object identity.
  35. Identify correct and incorrect statements or examples about the client's view of exceptions received from an enterprise bean invocation.
  36. Identify correct and incorrect statements or examples about application exceptions and system exceptions in entity beans, session beans, and message-driven beans.
  37. 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.
  38. 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
  39. SCBCD Study Guide
  40. Identify the use and behavior of the MessageDrivenContext interface methods.