ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

WebServices

diegobl250424 de Febrero de 2015

5.828 Palabras (24 Páginas)219 Visitas

Página 1 de 24

32 Beans Enterprise

Beans Enterprise son componentes Java EE que implementan la tecnología de Enterprise JavaBeans (EJB). Beans Enterprise se ejecutan en el contenedor EJB, un entorno de ejecución dentro de GlassFish Server (ver Tipos de contenedores ). Aunque transparente para el desarrollador de la aplicación, el contenedor EJB proporciona servicios de nivel del sistema, como las transacciones y la seguridad, a sus beans enterprise. Estos servicios le permiten crear e implementar beans de empresa, que forman el núcleo de las aplicaciones Java EE transaccionales rápidamente.

En los siguientes temas se abordan aquí:

• ¿Qué es un Bean Enterprise?

• ¿Qué es un bean de sesión?

• ¿Qué es un Message-Driven Bean?

• Acceso Beans Enterprise

• El contenido de un Bean Enterprise

• Convenciones de nomenclatura para los Beans Enterprise

• Los ciclos de vida de Beans Enterprise

• Más información acerca de Beans Enterprise

32.1 ¿Qué es un Bean Enterprise?

Escrito en el lenguaje de programación Java, un bean empresarial es un componente de servidor que encapsula la lógica de negocio de una aplicación. La lógica de negocio es el código que cumple con el propósito de la aplicación. En una aplicación de control de inventario, por ejemplo, los granos de empresa puede implementar la lógica de negocio en los métodos llamados checkInventoryLevel y orderProduct . Al invocar estos métodos, los clientes pueden acceder a los servicios de inventario previstos por la aplicación.

32.1.1 Beneficios de Beans Enterprise

Por varias razones, los beans enterprise simplifican el desarrollo de grandes aplicaciones distribuidas. En primer lugar, porque el contenedor EJB proporciona servicios de nivel del sistema para los beans enterprise, el desarrollador de beans puede concentrarse en resolver problemas de negocios. El contenedor EJB, más que el desarrollador del bean, es responsable de los servicios de nivel del sistema, como la gestión de transacciones y la autorización de seguridad.

En segundo lugar, porque los frijoles en lugar de los clientes contienen la lógica de negocio de la aplicación, el programador cliente puede centrarse en la presentación del cliente. El desarrollador de cliente no tiene que codificar las rutinas que implementan reglas de negocio o bases de datos de acceso. Como resultado, los clientes son más delgadas, un beneficio que es particularmente importante para los clientes que se ejecutan en dispositivos pequeños.

En tercer lugar, porque los beans enterprise son componentes portátiles, el ensamblador de aplicaciones pueden crear nuevas aplicaciones de los granos existentes.Siempre que utilizan las API estándar, estas aplicaciones se pueden ejecutar en cualquier servidor compatible con Java EE.

32.1.2 Cuándo utilizar Beans Enterprise

Usted debe considerar el uso de beans de empresa si la aplicación tiene alguno de los siguientes requisitos.

• La solicitud debe ser escalable. Para dar cabida a un número creciente de usuarios, es posible que tenga que distribuir los componentes de una aplicación a través de múltiples máquinas. No sólo pueden los beans de empresa de una aplicación de gestión en diferentes máquinas, sino también su ubicación permanecerán transparente para los clientes.

• Las transacciones deben garantizar la integridad de los datos. Beans Enterprise soportan transacciones, los mecanismos que gestionan el acceso concurrente de objetos compartidos.

• La aplicación tendrá una variedad de clientes. Con sólo unas pocas líneas de código, los clientes remotos pueden localizar fácilmente los beans enterprise.Estos clientes pueden ser delgadas, diversos y numerosos.

32.1.3 Tipos de Beans Enterprise

Tabla 32-1 resume los dos tipos de beans enterprise. Las siguientes secciones tratan cada tipo en más detalle.

Tabla 32-1 Tipos Beans de Enterprise

Bean Enterprise Tipo Propósito

Sesión Realiza una tarea para un cliente; opcionalmente, puede implementar un servicio web

Mensaje impulsada Actúa como un oyente para un tipo de mensajes en particular, como la API de Java Message Service

32.2 ¿Qué es un bean de sesión?

Un bean de sesión encapsula la lógica de negocio que se puede invocar mediante programación un cliente más, puntos de vista de los clientes, o de servicios web remotos locales. Para acceder a una aplicación que se implementa en el servidor, el cliente invoca los métodos del bean de sesión. Los lleva a cabo la sesión de frijol trabajan para su cliente, protegiéndolo de la complejidad mediante la ejecución de tareas de negocio dentro del servidor.

Un bean de sesión no es persistente. (Es decir, sus datos no se guardan en una base de datos.)

Para ejemplos de código, consulte el Capítulo 34, "Ejecución de los ejemplos de Enterprise Bean" .

32.2.1 Tipos de beans de sesión

Los beans de sesión son de tres tipos: con estado y sin estado, y singleton.

32.2.1.1 Stateful Session Beans

El estado de un objeto consiste en los valores de sus variables de instancia. En un bean de sesión con estado , las variables de instancia representan el estado de una sesión única de cliente / frijol. Debido a que el cliente interactúa ("habla"), con su frijol, este estado se llama a menudo el estado conversacional .

Como su nombre indica, un bean de sesión es similar a una sesión interactiva. Un bean de sesión no se comparte; que puede tener un solo cliente, de la misma manera que una sesión interactiva puede tener sólo un usuario. Cuando el cliente termina, su bean de sesión parece terminar y ya no se asocia con el cliente.

El estado se mantiene durante la duración de la sesión del cliente / frijol. Si el cliente retira el frijol, la sesión termina y el estado desaparece. Esta naturaleza transitoria del estado no es un problema, sin embargo, porque cuando la conversación entre el cliente y los extremos de frijol, no hay necesidad de retener el estado.

32.2.1.2 Beans de sesión sin estado

Un bean de sesión sin estado no mantiene un estado de conversación con el cliente. Cuando un cliente invoca los métodos de un bean sin estado, las variables de instancia del bean pueden contener un estado específico a ese cliente, pero sólo durante la duración de la invocación. Cuando se termina el método, el estado específico del cliente no debe mantenerse. Los clientes pueden, sin embargo, cambiar el estado de las variables de instancia en los frijoles apátridas agrupados, y este estado se celebrará al siguiente invocación del bean sin estado agrupado. Excepto durante la invocación del método, todas las instancias de un bean sin estado son equivalentes, permitiendo que el contenedor EJB para asignar una instancia de cualquier cliente. Es decir, el estado de un bean de sesión sin estado debe aplicarse en todos los clientes.

Debido a que pueden soportar múltiples clientes, beans de sesión sin estado pueden ofrecer una mejor escalabilidad para aplicaciones que requieren un gran número de clientes. Normalmente, una aplicación requiere un menor número de beans de sesión sin que los beans de sesión con estado para apoyar el mismo número de clientes.

Un bean de sesión sin estado puede implementar un servicio web, pero un bean de sesión con estado no puede.

32.2.1.3 Beans de sesión Singleton

Un bean de sesión singleton se instancia una vez por aplicación y existe para el ciclo de vida de la aplicación. Beans de sesión Singleton están diseñados para circunstancias en las que se comparte una única instancia de bean empresarial a través y al mismo tiempo acceder los clientes.

Beans de sesión Singleton ofrecen una funcionalidad similar a los beans de sesión sin estado pero se diferencian de ellos en que sólo hay un singleton bean de sesión por aplicación, en lugar de un conjunto de beans de sesión sin estado, cualquiera de los cuales pueden responder a una petición de cliente. Al igual que los beans de sesión sin estado, beans de sesión únicos pueden implementar puntos finales de servicios web.

Beans de sesión Singleton mantienen su estado entre invocaciones de cliente, pero no están obligados a mantener su estado a través de servidor se bloquea o paradas.

Las aplicaciones que utilizan un bean de sesión singleton pueden especificar que el singleton debería ser instanciada en inicio de la aplicación, lo que permite que el producto único para llevar a cabo tareas de inicialización de la aplicación. El singleton puede realizar tareas de limpieza en el cierre de aplicaciones, así, debido a que el singleton operará durante todo el ciclo de vida de la aplicación.

32.2.2 Cuándo utilizar beans de sesión

Beans de sesión con estado son apropiadas si alguna de las siguientes condiciones son verdaderas.

• El estado del bean representa la interacción entre el grano y un cliente específico.

• El grano debe contener información sobre el cliente a través de llamadas a métodos.

• El grano de media entre el cliente y los otros componentes de la aplicación, que presentan una vista simplificada al cliente.

• Detrás de las escenas, el bean gestiona el flujo de trabajo de varios beans enterprise.

Para mejorar el rendimiento, puede optar por un bean de sesión sin estado si tiene alguno de estos rasgos.

• El estado del frijol no tiene datos para un cliente específico.

• En una sola invocación de método, el frijol realiza una tarea genérica para todos los clientes. Por ejemplo, podría usar

...

Descargar como (para miembros actualizados) txt (37 Kb)
Leer 23 páginas más »
Disponible sólo en Clubensayos.com