Je commence un nouveau projet de couture destiné à un serveur JBoss EAP et j'ai très peu d'expérience avec EJB3. Qu'est-ce que je gagne en utilisant EJB3 plutôt qu'en utilisant un projet de guerre avec des pojos et des annotations de couture?Quel est l'avantage de l'utilisation d'EJB3 dans mon projet de couture?
Répondre
Cela a été beaucoup demandé sur le forum Seam et il n'y a jamais eu de bonne raison d'utiliser le projet EAR sur WAR. Sur le revers, il y a plusieurs avantages à utiliser des projets WAR par exemple:
- Déployez chaud code
- Utiliser un serveur léger par exemple Tomcat
La plupart des fonctionnalités EJB ont été mis à la disposition Projets WAR (par exemple, transactions, clustering, etc.)
Nous utilisons beaucoup les EJB dans notre projet. J'ai tendance à préférer les JavaBeans normaux, mais après deux ans, j'ai finalement eu l'un des avantages clés d'EJB, et c'est que vous pouvez créer une nouvelle implémentation sans changer aucun autre code.
Nous avons mis à jour un composant clé, mais toutes les méthodes d'interface sont les mêmes. Nous avons donc seulement besoin de créer une nouvelle implémentation et de déprécier l'ancienne.
Je tiens également à noter que JRebel 3.0 fournit un déploiement à chaud des EJB.
Je ne sais pas, mais Seam vous devez savoir que dans les spécifications de EJB3.1 vous pouvez mettre vos ejb de l'intérieur d'une guerre ... Voir http://community.jboss.org/wiki/EJB31inAS600M2 Glassfish V3 aussi je pense.
Je suppose que Tomcat prend en charge/soutiendra aussi, mais de toute façon vous pouvez utiliser EJB3 dans Tomcat avec un impl EJB3 embarqués comme OpenEJB (http://openejb.apache.org/)