2010-03-29 8 views
8

Estoy aprendiendo EJB3 de los últimos días. Tengo muchas preguntas con respecto a EJB, servidores de aplicaciones y despliegue de EJB.¿Cómo implementar EJB en el servidor?

Para empezar, he creado un simple bean de sesión sin estado helloworld pero no sé cómo implementarlo en el servidor. Tiene clase de bean única, interfaz de bean y un cliente servlet. He usado eclipse para desarrollar este proyecto.
Ninguno de los libros que he leído proporciona detalles paso a paso sobre cómo poner EJB en el servidor y cómo acceder a esos beans.

Tengo el servidor JBoss 6 y también tengo Java EE budle descargado del sitio web sun. ¿Este paquete Java EE contiene el servidor Glassfish? ¿o debo descargarlo por separado?
¿Alguien puede por favor darme detalles paso a paso sobre cómo poner mi bean y su cliente en el servidor (JBoss o Java EE)?

¿Y por qué tenemos que incluir la clase de interfaz bean en el código de cliente EJB? Quiero decir que o bien necesitamos mantener al cliente y al frijol en el mismo paquete o si los mantenemos en paquetes separados necesitamos importar interfaces de frijol en el código del cliente. ¿Estoy en lo cierto?

+0

¡Gracias por la ayuda! – Shekhar

Respuesta

8

Con Java EE 6, puede empaquetar su Servlets y EJB en un WAR(ya sea empaquetar EJB en un frasco y ponerlo en WEB-INF/lib o simplemente poner todas las clases en WEB-INF/classes). Y para implementar esta guerra, copiarlo en:

  • $GLASSFISH_HOME/domains/<domain1>/autodeploy de GlassFish v3 *
  • $JBOSS_HOME/server/default/deploy para JBoss 6

Con Java EE 5, vas a tener que empaquetar su código en un EAR.

Y si desea implementar su aplicación desde Eclipse (usando la Eclipse WTP), tendrá que instalar el adaptador de servidor apropiado. Para Eclipse Galileo y GlassFish (actualmente no existe un adaptador para JBoss 6 yo sepa), haga clic derecho la vista del servidor, seleccione Nuevo> Servidor, haga clic en Descargar adaptadores de servidor adicionales y seleccionar el adaptador deGlassFish. Finalice para definir su nuevo servidor GlassFish v3 Java EE 6 y despliegue su aplicación en él (haga clic derecho en en su aplicación y luego Ejecutar como> Ejecutar en el servidor). Para Eclipse Helios y GlassFish, puede seguir el enlace proporcionado por @VonC (instalación manual) o marcar this answer (instalar a través del sitio de actualización).

+0

No vi tu respuesta (mucho más completa) en ese momento. +1 – VonC

+0

Java EE 6 no permite colocar beans controlados por mensajes dentro de la guerra. –

1

Debe exportar como EJB a su carpeta jboss<version>\server/default/deploy y luego agregar la ruta de compilación para ello en el proyecto web del servlet.Puedes "ejecutar en el servidor" y elegir un servidor de aplicaciones como lo harías en cualquier proyecto, sin necesidad de exportar el WAR aunque, si lo haces, tendrás que volver a exportar tu WAR cada vez que modifiques tu código
AFAIK no hay un plugin de Eclipse para JBoss 6, pero Eclipse proporciona uno para 5.1

Cuestiones relacionadas