Cómo implementar la aplicación basada en EJB en Tomcat

Desarrollé una pequeña aplicación Java usando EJB3 y JSF. Pero quiero implementarlo en el servidor Tomcat (no en GlassFish y no en Netbeans IDE, tiene que ser independiente de Netbeans).

¿Cómo puedo implementarlo en Tomcat?

Puedes, pero no debe suceder de esa manera. Tomcat es un contenedor de servlets, y solo se requieren servidores de aplicaciones para admitir EJB.

Tomcat con soporte EJB integrado es básicamente TomEE . Reemplace Tomcat por TomEE. Puede seguir usando el complemento del servidor Tomcat en IDE para administrar TomEE.

use tomEE: http://openejb.apache.org/apache-tomee.html

Es un tomcat con cosas preconfiguradas para soportar ejb, cdi, etc.

Puedes usar EJBs con Tomcat, pero es un poco doloroso. Consulte los enlaces de Bozho para obtener más información. La pregunta que debería hacerse: ¿realmente necesita EJB?

Puede usar Glassfish o JBoss para un servidor de aplicaciones gratuito que tenga soporte EJB listo para usar.

Creo que la pregunta de si realmente necesita EJB es casi similar a preguntar si realmente necesita usar clases. Tan pronto como usa solo un poco de persistencia (muchas aplicaciones lo necesitan), los beans EJB son de gran ayuda. A diferencia de sus ancestros antiguos, los EJB modernos son muy livianos y fáciles de usar.

Dicho eso, como los otros indicaron. Tomcat es solo un contenedor Servlet. Proporciona Servlet y JSP, nada más. Si desea conveniencias modernas de Java como JSF, EJB y JPA (por ejemplo, Hibernate), debe agregarlas por separado a su .war (en WEB-INF / lib) o al directorio lib de Tomcat.

Sin embargo, si agrega todo eso a Tomcat manualmente, podría usar Glassfish, JBoss AS o Apache Geronimo. El último se puede ver como Tomcat, donde los Apache ya han agregado JSF, EJB, JPA, JTA, etc. para ti 😉