Foto av Johan Eltes

Kom igång med Service-Orienterad Integration

// Johan Eltes

Open ESB är en JBI-baserad ESB som körs i en applikationsserver. I skrivande stund finns bara stöd för Glassfish / Sun application server. Open ESB stödjer s.k. SOI - Service Oriented Integration. Det betyder att flödet i processen hanteras av den första tjänsten som triggar processen och att alla övriga delar ses som anrop av tjänster från “huvudtjänsten”. Den kan skrivas i Java, men andemeningen är att man på den översta nivån av styrlogik använder BPEL som implementationsspråk tillsammans med en grafisk editor.

Det speciella med JBI är att adaptrar som komponenter blir “osynliga” för utvecklaren. Kopplingen till adapters sker implicit, genom bindingsdefinitioner i WSDL-filerna. En WSDL-fil kan definiera tjänsten “OrderTjänst.godkännOrder(OrderMeddelande) i form av en PortType (WSDL 1.1) eller Interface (WSDL 2.0). Oavsett om denna tjänst är implementerad i BPEL eller Java, kan “anroparen” bestå i att en fil med format enligt det schema som definierar indata (OrderMeddelande) droppas i ett directory, eller anländer på en JMS-kö, eller skickas via ftp, eller kommer in till en mejlbox etc…

Med JBI styrs “triggningen”, dvs val av adapter - genom att varje typ av adapter (som i JBI kallas Binding Component) har sin egen WSDL-bindning. Man editerar alltså bara WSDL-filens Binding- och servicedel med adapter-specifika element för att “anropet” ska ske “från” t.ex. filsystemet, en databas eller JMS.

Redan idag finns ett ett brett utbud av adapters - även för relativt avancerade protocol, som sjukvårdens HL7.

Set-up

Detta är förstås ganska färskvara… I skrivande stund kommer man lättast igång med OpenSEB genom att ladda Netbeans IDE och Netbeans EnterprisePack (som innehåller glassfish med JBI samt IDE-stöd för JBI) från följande URL:er. Välj genomgående default-inställningar. Visserligen finns OpenESB IDE-stöd för NetBeans 5.5 (senaste skarpa versionen), men integrationen med glassfish är skakig. Efter mycket testande, kom jag fram till följande versioner av 5.5.1 (beta) som den bästa och enklaste vägen till att testa OpenESB:

  1. Ladda hem och installera NetBeans 5.5.1 beta
  2. Ladda hem och installera NetBeans Enterprise Pack 5.5.1 beta

Kommentarer