Кіріспе
Java Business Integration (JBI) – Java Community Process (JCP) аясында қызметке бағытталған архитектураны (SOA) іске асыру үшін әзірленген ерекшелік. JCP-нің сілтемесі JBI 1.0 үшін JSR 208 және JBI 2.0 үшін JSR 312 болып табылады. JSR 312 2010 жылғы 17 желтоқсанда JCP дауыс беру процесінен қабылданбастан алынып тасталды. JBI веб-қызметтер моделіне негізделген және қызмет беруші мен тұтынушы компоненттерін қосқан контейнер үшін қосылатын архитектураны ұсынады. Қызметтер контейнерге байланысты компоненттер (BC) арқылы қосылады немесе контейнерде қызмет көрсету қозғалтқышының (SE) бөлігі ретінде орналастырылуы мүмкін. Қолданылатын қызметтер моделі – Web Services Description Language 2.0. Орталық хабарлама жеткізу механизмі, нормаланған хабарлама маршрутизаторы (NMR), WSDL 2.0-дан алынған төрт хабарлама алмасу үлгісінің (MEP) бірі арқылы нормаланған хабарламаларды жеткізеді:
Тек қана (In Only): Тұтынушы провайдерге хабарлама жібереді, ал провайдер тек мәртебе туралы жауап береді. Бұл стандартты бір бағытты хабарлама алмасу.
Сенімді тек қана (Robust In Only): Бұл үлгі сенімді бір бағытты хабарлама алмасу үшін арналған. Тұтынушы хабарламамен бастайды, ал провайдер мәртебемен жауап береді. Егер жауап мәртебе болса, алмасу аяқталады, бірақ егер жауап қате болса, тұтынушы мәртебемен жауап беруі керек.
Сұрау-жауап (In Out): Тұтынушы хабарламамен бастайды, провайдер хабарламамен немесе қатемен жауап береді, ал тұтынушы мәртебемен жауап береді. Бұл стандартты екі бағытты хабарлама алмасу.
Сұрау-жауап (опциялы жауаппен) (In Optional Out): Провайдердің жауабы міндетті емес стандартты екі бағытты хабарлама алмасу.
BC және SE арасында орнату, орналастыру, бақылау және өмірлік циклмен байланысты функционалдықты басқару үшін Java Management Extensions (JMX) қолданылады. JBI BC және SE үшін стандартталған жинақтауды анықтайды, бұл компоненттерге кез келген JBI іске асырылуына өзгеріссіз көшірілуге мүмкіндік береді. JBI композиттік қосымшалар үшін стандартты жинақтауды анықтайды: қызмет тұтынушылары мен провайдерлерінен құралған қосымшалар. Жеке қызмет бірліктері компоненттерге орналастырылады; қызмет бірліктерінің топтары қызмет жинағы ретінде біріктіріледі. Қызмет жинағына қызмет бірліктерін «байланыстыру» (қызмет берушілерді және тұтынушыларды байланыстыру), сондай-ақ қызмет бірліктерін сыртқы қызметтерге байланыстыру үшін метадеректер кіреді. Бұл қызметтерді пайдаланып композиттік қосымшаларды құрастырудың қарапайым механизмін қамтамасыз етеді.
Java Business Integration (JBI) is a specification developed under the Java Community Process (JCP) for an approach to implementing a service oriented architecture (SOA). The JCP reference is JSR 208 for JBI 1.0 and JSR 312 for JBI 2.0. JSR 312 was removed from the JCP balloting process on 17 Dec, 2010 by the submitters without being accepted. JBI is built on a Web Services model and provides a pluggable architecture for a container that hosts service producer and consumer components. Services connect to the container via binding components (BC) or can be hosted inside the container as part of a service engine (SE). The services model used is Web Services Description Language 2.0. The central message delivery mechanism, the normalized message router (NMR), delivers normalized messages via one of four Message Exchange Patterns (MEPs), taken from WSDL 2.0:
In Only: A standard one way messaging exchange where the consumer sends a message to the provider that provides only a status response. Robust In Only: This pattern is for reliable one way message exchanges. The consumer initiates with a message to which the provider responds with status. If the response is a status, the exchange is complete, but if the response is a fault, the consumer must respond with a status. In Out: A standard two way message exchange where the consumer initiates with a message, the provider responds with a message or fault and the consumer responds with a status. In Optional Out: A standard two way message exchange where the provider's response is optional. To handle functionality that deals with installation, deployment, monitoring and lifecycle concerns amongst BCs and SEs, Java Management Extensions (JMX) is used. JBI defines standardized packaging for BCs and SEs, allowing components to be portable to any JBI implementation without modification. JBI defines standard packaging for composite applications: applications that are composed of service consumers and providers. Individual service units are deployable to components; groups of service units are gathered together into a service assembly. The service assembly includes metadata for "wiring" the service units together (associating service providers and consumers), as well as wiring service units to external services. This provides a simple mechanism for performing composite application assembly using services.
JBI-нің қолданыстағы компоненттері
Java-да ашық JBI Components жобасы, java.net-те басталган, Java Business Integration (JSR 208) спецификациясына сәйкес JBI компоненттерін қауымдық дамытуды қолдау мақсатындағы инкубаторлық жоба.