Java im starsza, tym lepsza

Najważniejszą zmianą w EJB 2.0 jest CMR (Container Managed Relationship) - możliwość obsługi przez kontener aplikacji zależności między beanami encji, w podobny sposób jak bazy danych zapewniają integralność danych powiązanych kluczami pierwotnymi i wtórnymi. CMR może obsługiwać jedno- i dwukierunkowe zależności typu: jeden (bean) - jeden (bean), jeden - wiele i wiele - wiele.

Istotną innowacją nowego modelu jest język zapytań EJB Query Language (EJB QL), zapewniający deklaratywną metodę nawigowania w sieci beanów połączonych mechanizmem CMR. EJB QL zapewnia znajdowanie beanów encji w podobny sposób, jak SQL pozwala na znajdowanie encji w bazie danych.

W EJB 2.0 wprowadzono również nowy rodzaj komponentu - bean do komunikacji asynchronicznej (Message Driven Bean), zapewniający komunikację z innymi systemami za pośrednictwem serwerów kolejkowania, np. Progress SonicMQ czy IBM MQSeries.

Integracja aplikacji

Analitycy uważają, że najważniejszym sukcesem J2EE jest ułatwienie procesów integrowania ze starymi systemami. Z tego powodu ta uniwersalna architektura cieszy się powodzeniem w dużych korporacjach, posiadających zwykle różnorodne systemy, aplikacje i bazy danych. Rozwiązywanie problemów integracji - nawet przy użyciu narzędzi komercyjnych wysokiej klasy - wymaga napisania dużych części kodu, a często także modyfikowania aplikacji, do których zwykle nie ma właściwej dokumentacji.

W specyfikacji J2EE 1.3 wprowadzono nową architekturę Java Connector Architecture (JCA), pozwalającą na dostęp do dowolnych aplikacji komercyjnych (w tym także do aplikacji na mainframe'ach) z komponentów EJB, osadzonych na serwerze aplikacyjnym za pośrednictwem uniwersalnych sterowników, dostarczanych przez producenta aplikacji lub opracowanych samodzielnie.

Integrowanie aplikacji ułatwia również usługa komunikacji asynchronicznej Java Message Service (JMS), stanowiąca obecnie wymagany element serwerów aplikacyjnych, zgodnych z J2EE w wersji 1.3. Pakiet JMS zawiera zestaw standardowych API i reguł składniowych, dotyczących dostarczania komunikatów. Realizuje on dwa modele komunikacji: kolejkowanie komunikatów między dwoma zainteresowanymi stronami oraz publikowanie/subskrybowanie. W porównaniu z tradycyjnymi serwerami do komunikacji asynchronicznej komunikacja JMS jest prymitywniejsza, nie zapewnia np. próby kilkakrotnego przesyłania komunikatu do odbiorcy. JMS pozwala na korzystanie z serwerów komunikacji asynchronicznej, takich jak IBM MQSeries czy Progress SonicMQ.

MIGAWKI Z JAVAONE

Java z usługami sieciowymi i XML

Zapowiadany w ub.r. projekt Adelard doczekał się realizacji w formie pakietu JAX, zawierającego liczne funkcje API do rejestrowania, znajdowania i korzystania z usług sieciowych za pośrednictwem XML. JAX zawiera stos SOAP, protokół XMLP do interakcji ze zdalnymi obiektami, kompilator opisu usług w języku WSDL oraz biblioteki dostępu do katalogów UDDI. Moduły te są oparte na zestawach API niższego poziomu do analizy składniowej XML, obsługi komunikacji oraz zarządzania rejestrami UDDI i ebXML. Ponadto w pakiecie zawarto biblioteki JDOM dla obiektowego modelu dokumentów XML i kompilator XSLTC do transformacji danych XML do określonego formatu.


TOP 200