Easy to Learn Java: Programming Articles, Examples and Tips

Start with Java in a few days with Java Lessons or Lectures

Home

Code Examples

Java Tools

More Java Tools!

Java Forum

All Java Tips

Books

Submit News
Search the site here...
Search...
 
Search the JavaFAQ.nu
1000 Java Tips ebook

1000 Java Tips - Click here for the high resolution copy!1000 Java Tips - Click here for the high resolution copy!

Java Screensaver, take it here

Free "1000 Java Tips" eBook is here! It is huge collection of big and small Java programming articles and tips. Please take your copy here.

Take your copy of free "Java Technology Screensaver"!.

Read Java Certification Certification SCBCD Study Guide - 4. Client View of a Se

JavaFAQ Home » Java Certification Books and Tests Go to all tips in Java Certification Books and Tests


Bookmark and Share

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.

 

Identify correct and incorrect statements or examples about the client view of a session bean's local and remote component interfaces.

A client NEVER DIRECTLY accesses instances of the session bean’s class. A client always uses the session bean’s COMPONENT interface to access a session bean’s instance. The class that implements the session bean’s component interface is provided by the container.

A session EJBObject supports:

  • The business logic methods of the object. The session EJBObject delegates invocation of a business method to the session bean instance.
  • Get the session object’s remote home interface.
  • Get the session object’s handle.
  • Test if the session object is identical with another session object.
  • Remove the session object.
			public interface EJBObject extends Remote {
			EJBHome getEJBHome() throws RemoteException;
			Handle getHandle() throws RemoteException;
			Object getPrimaryKey() throws RemoteException;
			boolean isIdentical(EJBObject obj) throws RemoteException;
			void remove() throws RemoteException, RemoveException;
			}
		

A session EJBLocalObject supports:

  • The business logic methods of the object. The session EJBLocalObject delegates invocation of a business method to the session bean instance.
  • Get the session object’s local home interface.
  • Test if the session object is identical with another session object.
  • Remove the session object.
			public interface EJBLocalObject {
			EJBLocalHome getEJBLocalHome() throws EJBException;
			Object getPrimaryKey() throws EJBException;
			boolean isIdentical(EJBLocalObject obj) throws EJBException;
			void remove() throws RemoveException, EJBException;
			}
		

Method getPrimaryKey() on session bean will throw EJBException (local SB) or RemoteException (remote SB) because session bean does not have primary key.

EJBObject interface extends Remote (marker) interface.

IBA JV

 Printer Friendly Page  Printer Friendly Page
 Send to a Friend  Send to a Friend

.. Bookmark and Share

Search here again if you need more info!
Custom Search



Home Code Examples Java Forum All Java Tips Books Submit News, Code... Search... Offshore Software Tech Doodling

RSS feed Java FAQ RSS feed Java FAQ News     

    RSS feed Java Forums RSS feed Java Forums

All logos and trademarks in this site are property of their respective owner. The comments are property of their posters, all the rest 1999-2006 by Java FAQs Daily Tips.

Interactive software released under GNU GPL, Code Credits, Privacy Policy