Java Enterprise Bean

10
Java Enterprise Bean Los enterprise javabeans son componentes del lado del servidor que encapsulan lógica de negocios en una aplicación. Los Enterprise javabeans simplifican el desarrollo de aplicaciones mediante la gestión automática de transacciones y seguridad. Estudiaremos dos tipos de Enterprise javabeans: los session beans, los cuales ejecutan la lógica de negocios y message-driven beans (beans controlados por mensajes) los cuales actúan como message listener. Los Entity beans están en desuso en favor de la Java Persistence API, JPA. Los bean Entity son soportados por cuestiones de compatibilidad, sin embargo, la recomendación es utilizar el mapeo objeto-relaciones (ORM por sus siglas en inglés) a tráves de JPA. Session Beans Como se ha mencionado, los session beans permiten encapsular la lógica de negocios. En java EE, normalmente se necesitan 2 artefactos para c rear un bean de sesión. El bean mismo y una interface. Estos artefactos incorporan las anotaciones apropiadas para permitir al contenedor de EJB conocer que esos artefactos son beans de sesión. A continuación desarrollaremos un simple bean de sesión. Lo primero es mencionar el tipo de proyecto o proyectos que necesitamos para probar este ejemplo. Crearemos una aplicación empresarial, la cual requerirá de un módulo donde se almacenará el bean de sesión. Lo anterior indica la necesidad de dos proyectos, luego crearemos un proyecto cliente para probar nuestro sencillo ejemplo, con ello tendremos tres proyectos, finalmente la necesidad de una interface para un bean de sesión, requiere un proyecto ext ra de librería, el cual contendrá la interface que deberá ser incorporada al proyecto cliente, en fin, necesitaremos cuatro proyectos para probar, este sencillo bean de sesión. Comencemos, creemos un nuevo proyecto de aplicación empresarial llamado BeanSesionPrimero,

Transcript of Java Enterprise Bean

Page 1: Java Enterprise Bean

7/24/2019 Java Enterprise Bean

http://slidepdf.com/reader/full/java-enterprise-bean 1/10

Java Enterprise Bean

Los enterprise javabeans son componentes del lado del servidor que encapsulan lógica de negocios

en una aplicación. Los Enterprise javabeans simplifican el desarrollo de aplicaciones mediante la

gestión automática de transacciones y seguridad. Estudiaremos dos tipos de Enterprise javabeans:

los session beans, los cuales ejecutan la lógica de negocios y message-driven beans (beans

controlados por mensajes) los cuales actúan como message listener.

Los Entity beans están en desuso en favor de la Java Persistence API, JPA. Los bean Entity son

soportados por cuestiones de compatibilidad, sin embargo, la recomendación es utilizar el mapeo

objeto-relaciones (ORM por sus siglas en inglés) a tráves de JPA.

Session Beans

Como se ha mencionado, los session beans permiten encapsular la lógica de negocios. En java EE,

normalmente se necesitan 2 artefactos para crear un bean de sesión. El bean mismo y una interface.

Estos artefactos incorporan las anotaciones apropiadas para permitir al contenedor de EJB conocerque esos artefactos son beans de sesión.

A continuación desarrollaremos un simple bean de sesión. Lo primero es mencionar el tipo de

proyecto o proyectos que necesitamos para probar este ejemplo.

Crearemos una aplicación empresarial, la cual requerirá de un módulo donde se almacenará el bean

de sesión. Lo anterior indica la necesidad de dos proyectos, luego crearemos un proyecto cliente

para probar nuestro sencillo ejemplo, con ello tendremos tres proyectos, finalmente la necesidad

de una interface para un bean de sesión, requiere un proyecto extra de librería, el cual contendrá la

interface que deberá ser incorporada al proyecto cliente, en fin, necesitaremos cuatro proyectos

para probar, este sencillo bean de sesión.

Comencemos, creemos un nuevo proyecto de aplicación empresarial llamado BeanSesionPrimero,

Page 2: Java Enterprise Bean

7/24/2019 Java Enterprise Bean

http://slidepdf.com/reader/full/java-enterprise-bean 2/10

Después de ingresar el nombre, Clic en el botón Next >

En la siguiente ventana puede elegir el servidor, la versión Java EE, la creación del EJB Módulo (este

debe marcarse por cuanto contrendrá al bean de sesión) y finalmente la opción de crear la aplicación

web que trabajaría como cliente para invocar el sesión bean, en esta ocasión no utilizaremos una

aplicación web por tanto, esta opción no debe marcarla. Luego clic en Finish.

Page 3: Java Enterprise Bean

7/24/2019 Java Enterprise Bean

http://slidepdf.com/reader/full/java-enterprise-bean 3/10

Una vez el IDE genera el proyecto podemos notar en el panel izquierdo, la aplicación empresarial y

el módulo que contendrá el bean de sesión y que se almacena dentro de la aplicación empresarial.

Ahora procedamos a crear un nuevo proyecto cliente, desde el cual se invocará el bean de sesión.

Elegiremos en categorías Java EE y en Proyectos Enterprise Application Client, luego clic en Next >

En la siguiente ventana podrás colocar el nombre del Enterprise application client, en este ejemplo

le llamaremos BeanSesionPrimeroCliente, luego clic en el botón Next >.

Page 4: Java Enterprise Bean

7/24/2019 Java Enterprise Bean

http://slidepdf.com/reader/full/java-enterprise-bean 4/10

 

En la siguiente ventana debe tener el cuidado de asociar en la opciónAdd to Enterprise Application 

el proyecto BeanSesionPrimero, de esa forma se garantiza que ambos proyectos trabajaran en

conjunto. Los demás valores no deben modificarse, clic en el botón Finish.

Page 5: Java Enterprise Bean

7/24/2019 Java Enterprise Bean

http://slidepdf.com/reader/full/java-enterprise-bean 5/10

Después de que el IDE completa el proyecto cliente, nos resta escribir un proyecto de librería de

clases java, este proyecto se solicitará dentro de un momento para incorporar en él la interface que

se relaciona al bean de sesión. Seleccione en categoríasJava y en Proyectos Java Class Library luego

clic en el botón Next >.

En la siguiente ventana ingrese el nombre BeanSesionPrimeroLib, luego clic en Finish 

Page 6: Java Enterprise Bean

7/24/2019 Java Enterprise Bean

http://slidepdf.com/reader/full/java-enterprise-bean 6/10

Ahora podemos apreciar los cuatro proyectos del lado izquierdo del IDE

Todo lo anterior nos servirá para probar nuestro session bean. Ahora estamos listos para iniciar

nuestro ejemplo, primero elija el proyecto BeanSesionPrimero-ejb haciendo clic derecho sobre él y

luego elija New, luego Other en la ventana que se presenta elija en categorías Enterprise JavaBeans

y en Tipos de archivo Session Bean, luego clic en Next >.

En la siguiente ventana ingresaremos el nombre Mensaje, también  agregaremos el nombre de

paquete com.programacion4, posteriormente el tipo de sesión quedará como Stateless.

Finalmente en Create Interface seleccione Remote in Project, automáticamente se asocia la librería

 java creada como último proyecto. clic en el botón Finish.

Page 7: Java Enterprise Bean

7/24/2019 Java Enterprise Bean

http://slidepdf.com/reader/full/java-enterprise-bean 7/10

 

Cuando el IDE termina de generar el esqueleto del bean de sesión, por favor ponga su atención en

el mensaje del cuerpo de la clase, el cual indica que para agregar la lógica del negocio clic derecho

dentro del cuerpo del programa y elija la opción Insert Code y luego Add Bussines Method, esta

opción le llevará a una pantalla similar a la siguiente.

Agregue el Nombre getMensaje, el tipo de Retorno String y un parámetro llamado mensaje y el

tipo java.lang.String. luego clic en el botón OK.

Ahora note el código generado y un pequeño cambio mostrado en amarillo.

package com.programacion4;

import javax.ejb.Stateless;

@Stateless

public class Mensaje implements MensajeRemote {

@Override

public String getMensaje(String mensaje) {

return mensaje;

}

}

Page 8: Java Enterprise Bean

7/24/2019 Java Enterprise Bean

http://slidepdf.com/reader/full/java-enterprise-bean 8/10

Guarde el proyecto y ahora note como en el proyecto de librería de clases se agregó

automáticamente la interface que implementa el bean de sesión Mensaje.

La interface agregada toma el nombre del bean de sesión y su tipo quedando el nombre como

MensajeRemote.java.

Ahora vayamos al proyecto BeanSesionPrimeroCliente y agreguemos a la clase Main el código

correspondiente que llamará a nuestro bean de sesión. En este punto nuevamente nos ayuda el

IDE ya que podemos hacer clic derecho dentro el método main y nuevamente elegir Insert Code y

luego seleccionamos la opción Call Enterprise bean..

Page 9: Java Enterprise Bean

7/24/2019 Java Enterprise Bean

http://slidepdf.com/reader/full/java-enterprise-bean 9/10

El IDE mostrará una ventana en donde tenemos que elegir el Enterprise bean y el método que

deseamos invocar, luego clic en el botón OK.

Después de un momento el IDE agrega la anotación @EJB y su correspondiente importación.

Entonces debe agregar la línea de código que se muestra dentro del método main, en la que se

utiliza JOptionPane para mostrar el mensaje que a su vez genera el bean de sesión.

Digite el código siguiente o copie y pegue.

package beansesionprimerocliente;

import com.programacion4.MensajeRemote;

import javax.ejb.EJB;

import javax.swing.JOptionPane;

public class Main {

@EJBprivate static MensajeRemote mensaje;

public static void main(String[] args) {

JOptionPane.showMessageDialog(null,mensaje.getMensaje("Si puedes

ver esto, el bean de sesión funciona..!!"));

}

}

Page 10: Java Enterprise Bean

7/24/2019 Java Enterprise Bean

http://slidepdf.com/reader/full/java-enterprise-bean 10/10

Para correr el proyecto, haga clic derecho sobre el Application Enterprise BeanSesionPrimero y

Desplieguelo, luego clic derecho sobre el mismo proyecto y elijaEjecutar o Run. 

Es probable que el IDE tarde un poco en montar los proyectos y ejecutar, pero si todo funciona

bien la salida será similar a:

Nota: es probable que el programa corra y haya que minimizar Netbeans para ver el mensaje.