Como implantar o aplicativo baseado em EJB no Tomcat

Eu desenvolvi um pequeno aplicativo Java usando EJB3 e JSF. Mas eu quero implantá-lo no servidor Tomcat (não GlassFish e não no Netbeans IDE, ele deve ser independente do NetBeans).

Como posso implantá-lo no Tomcat?

Você pode, mas não é para acontecer dessa maneira. O Tomcat é um contêiner de servlet e apenas servidores de aplicativos são necessários para suportar o EJB.

O Tomcat com suporte EJB integrado é basicamente o TomEE . Substitua o Tomcat pelo TomEE. Você pode continuar usando o plug-in do servidor Tomcat no IDE para gerenciar o TomEE.

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

É um tomcat com material pré-configurado para suportar ejb, cdi, etc.

Você pode usar EJBs com o Tomcat, mas é um pouco doloroso. Confira os links da Bozho para mais informações. A pergunta que você deve se fazer: você realmente precisa de EJBs?

Você pode usar o Glassfish ou o JBoss para um servidor de aplicativos gratuito que tenha suporte a EJB pronto para uso.

Eu acho que a questão de perguntar se você realmente precisa de EJBs é quase como perguntar se você realmente precisa usar classs. Assim que você estiver usando apenas um pouco de persistência (muitos aplicativos precisam disso), os beans EJB são uma grande ajuda. Ao contrário de seus antigos ancestrais, os modernos EJBs são muito leves e fáceis de usar.

Dito isto, como os outros indicaram. Tomcat é apenas um contêiner Servlet. Ele fornece Servlet e JSP, nada mais. Se você quiser as conveniências modernas do Java, como JSF, EJB e JPA (por exemplo, Hibernate), terá que incluí-las separadamente em seu .war (em WEB-INF / lib) ou no diretório lib do próprio Tomcat.

No entanto, se você adicionar tudo isso ao Tomcat manualmente, poderá usar o Glassfish, o JBoss AS ou o Apache Geronimo. O último pode ser visto como Tomcat, onde o pessoal do Apache já adicionou JSF, EJB, JPA, JTA, etc para você 😉