Overview
What is JBI ?
![]() | A Brief Intro to JBI A brief introduction to JBI is available in the What is JBI? document. This document is more in-depth and supplemental. |
The Java Business Integration spec (JBI) is a java based standard to build integrations systems by using plug-in components which interoperates through mediated normalized message exchanges.The message exchange model is based on the web services description language (WSDL).
The figure at the top shows a high level concept of JBI of the plug-in framework. The JBI environment provides interfaces to be used by plug-in components, while the components provides interfaces used by the JBI environment. Components do not interact with each other directly. Instead, as shown in the bottom figure, JBI acts as an intermediary to route messages between components. This separation is the key to decoupling between service providers and consumers, which is one of the goal of service oriented architectures. In addition, it provides a key point for message processing and monitoring.
In this WSDL-based, service-oriented model, JBI plug-in components are responsible for providing and consuming services. By providing a service, a component is making available a function or functions that can be consumed by other components (or even itself). Such functions are modeled as WSDL 2.0 operations, which involve the exchange of one or more messages.A set of four WSDL-defined, basic message exchange patterns (MEPs) crisply defines the sequence of messages allowed during execution of an operation.This shared understanding, between consumer and provider components, of the message exchange pattern is the foundation of interoperability of such components in JBI.
The services provided by components (if any) are described to JBI by the component, using WSDL 1.1 or 2.0. This provides an abstract, technology-neutral model of services using XML-based message exchanges. WSDL also provides a mechanism for declaring additional service metadata of interest to service consumers and JBI itself. Components can query JBI for the for the WSDL describing available services.
翻译:JBI Architecture
This picture describes the architecture of the JBI system.
- The JBI environment provides deployment, control & monitoring features through JMX based administration tools
- The Normalized Message Router or NMR, which provides the mediated message exchange infrastructure
- Components (in white rectangles)
Components are divided in two categories:
- Service Engines (on top) provides business logic and transformation services and also consumes such services.
- Binding Components provide connectivity to services external to the JBI environment.
Service engines and binding components can function as service providers, consumers, or both. Note that the distinction between SEs and BCs is purely pragmatic, but the separation of business logic from communications logic reduces complexity and increases flexibility.
The JBI environment, in addition to the messaging system, defines a management structure based on JMX which provides standard mechanisms for:
- Installing components
- Managing a component's life cycle (start / stop)
- Deploying service artifacts to components
JBI components often function as a type of container to which artifacts can be deployed to add new service or provider logic. For example, a service engine that provides XSLT-based transformation services would have XSLT style sheets deployed to it, in order to add new transformation operations. This process of adding such component-specific artifacts to an installed component is called deployment, to distinguish it from component installation. Such an artifact is called a service unit, while collection of deployment artifacts and associated metadata is called a service assembly.
The core message exchange concept implements WSDL messaging. Service requests are generated by consumer components, routed by the NMR, and delivered to a provider component. For example, the BPEL SE may generate a request, which happens to be provided by the external service provider connected to the WS-I BC. The NMR will route the request to the WS-I binding. The SE in this case is a service consumer, and the BC a provider.
翻译:- JBI环境通过基于JMX的管理工具来提供部署、控制和监控的功能
- 规范化消息传递(Normalized Message Router or NMR),它作为中间消息交换的基础。
- 组件(白色的长方形)
- Service Engines(上方),提供业务逻辑、转换服务和使用其它服务
- Binding Components,提供外部服务与JBI环境之间的连通性
- 组件安装
- 管理组件声明周期(启动/停止)
- 将service artifact部署到components