I am creating a Java EE application using jpa.
I am getting the following error when the code is run on server
[2/25/12 22:56:31:371 IST] 0000004
Your EntityManager
manager
is no-interface an Enterprise Java Bean injected in your client UserBean
. EJBs should be injected in classes whose lifecycle is managed by the application server.
The client must be either a web component or another enterprise bean. In your case, the client UserBean
is a POJO (Plain Old Java Object). See here for further details about how to use EJBs.
A possible simple solution is to make UserBean a Stateless Session Bean by adding the annotation javax.ejb.Stateless before the class definition. And you should eventually inject UserBean into your ManagedBean with the EJB annotation.