Set - 3

Question 16 :

What is difference between EJB 1.1 and EJB 2.0?

Answer :

The bulk of the changes in EJB 2.0 are found in the definition of a new CMP component model. It's radically different from the old CMP model because it introduces an entirely new participant, the persistence manager, and a completely new way of defining container-managed fields, as well as relationships with other beans and dependent objects.

Question 17 :

Can a Session Bean be defined without ejbCreate() method?

Answer :

The ejbCreate() methods is part of the bean's lifecycle, so, the compiler will not return an error because there is no ejbCreate() method.
However, the J2EE spec is explicit:
· the home interface of a Stateless Session Bean must have a single create() method with no arguments,
while the session bean class must contain exactly one ejbCreate() method, also without arguments.
· Stateful Session Beans can have arguments (more than one create method)

Question 18 :

What is the difference between ejbCreate() and ejbPostCreate

Answer :

The purpose of ejbPostCreate() is to perform clean-up database operations after SQL INSERTs (which occur when ejbCreate() is called) when working with CMP entity beans. ejbCreate() is called before database INSERT operations. You need to use ejbPostCreate() to define operations, like set a flag, after INSERT completes successfully.

Question 19 :

Why does EJB needs two interfaces(Home and Remote Interface)

Answer :

There is a pure division of roles between the two .
Home Interface is the way to communicate with the container which is responsible for creating , locating and removing beans and Remote Interface is the link to the bean that allows acces to all methods and members.

Question 20 :

What are the optional clauses in EJB QL?

Answer :

WHERE and ORDERBY clauses are optional in EJB QL where as SELECT and FROM are required clauses.