How do I add EJB capabilities to an Eclipse dynamic web project?-Collection of common programming errors

I am developing a simple application with EJB 3.0 using OpenEJB for deployment and Eclipse as an IDE.

I created the project as a ‘dynamic web application’ in Eclipse. When I tried creating the first stateless session bean, I realized that the @Remote annotation could not be resolved.

What is the right way to fix this problem ?

  1. Delete the project and create a new ‘enterprise application project’ (this seems to be pretty heavy weight, so I am not sure I want to go in this direction) ?
  2. Delete the project and create an EJB project (this does not seem to be right because I believe such a project will only let me bundle the EJB part of the application) ?
  3. Add some libraries to my existing project (is there a library pack for EJB 3.x) ?
  4. Add a facet to my existing project (I tried to see if I can add a facet, but I cannot see an EJB facet within the context of this project) ?

Thanks for helping.

Update: I found the answer.

TomEE’s installation has a directory containing all the jar files needed to compile and run EJB’s ‘apache-tomee-webprofile-1.0.0-beta-2/webapps/openejb/lib’

I created a User Library in Eclipse containing all the jars from the lib folder described above and added it to the build path.

The EJB interfaces now compile properly.