Java Business Integration ( JBI ) es una especificación desarrollada bajo el Java Community Process (JCP) para un enfoque para implementar una arquitectura orientada a servicios (SOA). La referencia de JCP es JSR 208 para JBI 1.0 y JSR 312 para JBI 2.0. La JSR 312 fue eliminada del proceso de votación del JCP el 17 de diciembre de 2010 por los remitentes sin ser aceptada.
JBI se basa en un modelo de servicios web y proporciona una arquitectura conectable para un contenedor que aloja componentes de consumidores y productores de servicios. Los servicios se conectan al contenedor a través de componentes vinculantes (BC) o pueden alojarse dentro del contenedor como parte de un motor de servicio (SE). El modelo de servicios utilizado es el Lenguaje descriptivo de servicios web 2.0 . El mecanismo central de entrega de mensajes, el enrutador de mensajes normalizados (NMR), entrega mensajes normalizados a través de uno de los cuatro Patrones de intercambio de mensajes (MEP), tomado de WSDL 2.0:
- In-Only : Un intercambio de mensajería unidireccional estándar en el que el consumidor envía un mensaje al proveedor que proporciona solo una respuesta de estado.
- Robusto In-Only : este patrón es para intercambios de mensajes unidireccionales confiables. El consumidor inicia con un mensaje al que el proveedor responde con el estado. Si la respuesta es un estado, el intercambio está completo, pero si la respuesta es una falla, el consumidor debe responder con un estado.
- In-Out : Un intercambio de mensajes bidireccional estándar en el que el consumidor inicia con un mensaje, el proveedor responde con un mensaje o falla y el consumidor responde con un estado.
- In Optional-Out : Un intercambio de mensajes bidireccional estándar donde la respuesta del proveedor es opcional.
Para manejar la funcionalidad que se ocupa de la instalación, implementación, monitoreo y preocupaciones del ciclo de vida entre BC y SE, se utiliza Java Management Extensions (JMX). JBI define el empaquetado estandarizado para BC y SE, lo que permite que los componentes sean portátiles a cualquier implementación de JBI sin modificaciones.
JBI define el empaquetado estándar para aplicaciones compuestas: aplicaciones compuestas por consumidores y proveedores de servicios. Las unidades de servicio individuales se pueden implementar en los componentes; Los grupos de unidades de servicio se agrupan en un conjunto de servicios. El conjunto de servicios incluye metadatos para "conectar" las unidades de servicio (asociar proveedores de servicios y consumidores), así como conectar las unidades de servicio a servicios externos. Esto proporciona un mecanismo simple para realizar el ensamblaje de aplicaciones compuestas utilizando servicios.
Implementaciones de JBI
Los siguientes software de código abierto basado JBI ESB implementaciones están disponibles:
- ESB abierto
- Pétalos ESB
- Apache ServiceMix
- FUSE ESB (Enterprise ServiceMix): compatible con JSR 208
- Mula . Aunque no es un contenedor compatible con JBI en sí mismo, Mule proporciona interoperabilidad con contenedores JBI. Hay un proyecto Mule-JBI separado que abordará este problema de cumplimiento del JBI.
Los siguientes ESB están certificados por JBI / JSR 208 TCK: Open ESB y Petals ESB .
Además, el servidor de aplicaciones Java EE de código abierto Project GlassFish viene con el tiempo de ejecución JBI del proyecto Open ESB .
Java EE SDK también incluye el tiempo de ejecución de JBI y un motor de orquestación BPEL .
Oracle afirma que Fusion Middleware viene con la implementación de JBI. [ cita requerida ]
TIBCO ActiveMatrix Service Grid proporciona un marco de contenedor de servicios, basado en las especificaciones JSR 208 y SCA ( Arquitectura de componentes de servicio ), lo que permite agregar contenedores de servicios (Java, Java EE, .net, BPEL) según sea necesario, como aplicaciones compuestas en un Fundación.
Componentes JBI existentes
El [enlace muerto permanente ] El proyecto Open JBI Components en java.net es un proyecto de incubadora iniciado para fomentar el desarrollo basado en la comunidad de componentes JBI que se ajustan a la especificación Java Business Integration (JSR 208).
Libros
- Binildas A. Christudas, "Integración empresarial Java orientada a servicios" (Packt Publishing: febrero de 2008, ISBN 1-84719-440-0 ; ISBN 978-1-84719-440-4 ), http://www.packtpub.com/service-oriented-java-business-integration
Ver también
- Soluciones Enterprise Service Bus ofrecidas por varios proveedores de plataformas Java .
- Arquitectura de componentes de servicio (SCA)