Why do we write ejbPostCreate after every ejbCreate ?
in ejbPostCreate(...) you set up all the Container Managed Relationship(CMR) fields. That's because behind the scenes CMR is implemented using foreign keys (and associative tables) in a database, and you cannot setup a relation without having the primary key of your original bean. Yes, you got, it's created in ejbCreate(...)
The EJBObject (remote object wrapper) is not created until ejbCreate has succeeded. The EJBObject is available in ejbPostCreate and is required in EJB 2.0 to set up bean relationships.
You can have the EntityContext(means getEjbObject()and getPrimaryKey()),only after the completion of ejbCreate().After ejbCreate(),ejbPostCreate() called and uses entitityContext to intilalize the fields as the Busssiness model,though it is must to intialize them .It depends only on your AppliactionModel.