5. • “Una parte abstracta de algo”. WorlNet –
Princenton University.
• Es una pieza de código escrito para
manifestar un comportamiento
especifico.
• Auto contenido.
• Puede ser reutilizado.
• Viva independiente.
• Aplicaciones Compuestas.
Componentes de Software
6. • Define un mecanismo estándar para las aplicaciones J2EE.
• Provee un modelo transaccional, multinivel y distribuido para
aplicaciones empresariales.
Plataforma J2EE
7. • Es una especificación.
• Define una arquitectura sistemas basados en
componentes.
• Definen contratos entre los diferentes
proveedores de contenedores EJB.
• La meta asegurar portabilidad entre
proveedores.
Tecnología EJB
8. • Componentes de
Software.
• Corren en un EJB
Container.
– Gestiona todo aspecto del
EJB.
– Acceso Remoto
– Seguridad
– Persistencia
– TX
– Concurrencia
– Pooling
Contenedor EJB
9. • Aglutinador entre clientes y servidores.
• Escalabilidad
• Estándares
• One Stop Shop (Plataformas Integrales).
• Productividad
• OOP en el servidor
• Arquitectura de Componentes Abierta
• Java en la capa media
• Soporte a otros lenguajes y CORBA
Porque se necesitarían?
10. • Session Bean
• Entity Beans
• Message Driven Beans
• Timer Service
La Triada + 1
11. • Usados para manejar transacciones.
– Session Beans
– Entity Beans
– Acceso a recursos
• No son objetos persistentes como los entity
beans.
• No representan datos en la base de datos.
• Encapsulan la lógica de negocio de una
arquitectura a tres niveles.
• 2 Tipos
– Stateless
– Statefull
Session Bean
12. • Uno de los 2 tipos principales de
EJB
• Usados para representar datos
en la base de datos.
• 2 Tipos
– Container-Managed Persistence
(CMP), and Bean-Managed
Persistence (BMP)
• Mapeo Objeto Relacional
Entity Bean
13. • EJB para procesar mensajes
asíncronos.
• JMS Listener
• No son accedidos a través de
interfaces.
• Se usan cuando se requieren
procesos asíncronos.
Message Driven Bean
14. • Son accedidas por las
aplicaciones cliente en la red a
través de interfaces.
• Interfaz Remota
• Interfaz Home
• Clase Bean
Componentes del EJB
15. • Representan el bean.
• El EJB Container encapsula el
bean.
• El contenedor maneja toda
petición al bean.
• Home: Representa el ciclo de
vida del componente.
• Remote: Representa los métodos
de negocio del bean.
Interfaces Remotas y
Home
16. • No mantienen estado conversacional
• Toda invocacion tiene que ser con
parametros.
• @Remote
• @Local
• Cada parametro que se reciba deba ser
Serializable
Stateless Session Bean
17. • Se deben atrapar las excepciones
y lanzar una EJBException
• Lo primero que se nota es la
anotacion @Stateless
• Para hacer binding con JNDI se
hacer por medio de:
– EJBName/remote o EJBName/local
Stateless Session EJB
18. • Provee una vista al entorno del
contenedor EJB
• Se puede obtener información del
usuario que esta ejecutando el
EJB
SessionContext
23. • Dedicado a un cliente por el ciclo
de vida de la instancia del bean
• No manejan pool de instancias
• Mantienen el estado
conversacional
• No son persistentes
Statefull Session Bean
27. • Soportan el procesamiento
asincrono desde un proveedor
JMS.
• Todos los proveedores de EJB
3.0 deben soportar un servidor
JMS.
Message Driven Beans