Does SOA relate to user interfaces? Can services be part of the presentation layer? Can service-orientation be applied to human-service interaction? The answer to all of these questions is, in fact, "yes", but only if we understand the unique requirements of designing and using services with the human end-user in mind.
By Torsten Winterberg (OPITZ CONSULTING) and Berthold Maier (Oracle Consulting Deutschland)
15. SCA Component Verwendet konkrete Implementierung von Geschäftslogik Kapselt verwendete Programmiersprache Stellt Funktionalität als Services zur Verfügung (Service Provider) Verwendet andere Services (Service Consumer) Konfiguriert Implementierung über Properties PROPERTIES SERVICES IMPLEMENTATION REFERENCES Impl
16. Implementation konkrete Implementierung von Geschäftslogik in einer beliebigen, von der SCA Runtimeunterstützten Programmiersprache Konfiguration der Implementation erfolgt in: SCA Component Implementation
22. SCA: Abstract andConcrete WSDL Abstract WSDL: Types, messages (structure of the methodinput/output parameter types, exception (or fault) types, the port type (=interface) Concrete WSDL bindings to protocols, data structures and service elements with address location SCA & WSDL Composite/components are always defined as “Abstract WSDLs”. The binding takes place in the SCA-Composite Container
25. Wiring Verknüpfung von References und Services Definiert durch Interfaces, Bindings und definierten Policies Autowiring kompatibler References/Services durch SCA Runtime möglich
26. Bindings Definieren Protokoll für Kommunikation mit Service/Reference Pro Services/Reference können mehrere Bindings definiert werden. Innerhalb einer Domain kann die Wahl des Bindings der Runtime überlassen werden. Trennung von Geschäftslogik (implementation), Infrastrukturcode (binding) und Infrastrukturkonfiguration (composite) Binding-Abstraktion ermöglicht Nutzung von Alternativen zu Web-Services SCA spezifiziertWeb-Service-, JMS-, EJB-Session-Bean- und JCA-Binding
28. Service DataObjects Spezifikation zur Vereinheitlichung der Handhabung von Daten- unabhängig von Programmiersprache- unabhängig von Datenquelle (DB, XML, ...) Entwicklung stark mit SCA gekoppelt Generell aber unabhängige und eigenständige Spezifikation
29. SDO DataObjects DataObject : Enthält Daten als Properties und Verweise auf weitere DataObjects (Containment oder Reference) SDO DataObject SDO DataGraph Department Employee Id Name
31. Oracle SOA Suite 11g Ganzheitliche Suite mit diversen Komponenten: BPEL, ESB/Mediator, Rules, HumanTasks, EDN, CEP, BAM, WSM, Adaptoren Implementierung des SCA assembly models SCA composite als standard-basierte Deployment Unit Diverse Komponenten in Composites verwendbar: ESB (Mediator), BPEL, Human Task, Rule, Spring
34. ADF BC genutzt als Web-Service und SDO ADF Faces Web Application Web-Service(Activity) DatenWeb-Service (SDO) Application Module(exposed as WS) SOA Suite ADF Business Components View Object E DN Entity Object DB
35. ADF BC, SDO and BPEL ADF BC Application Module könnenalsWeb-Service angebundenwerden ADF BC View Objectskönnenals SDO Service direkt in SCA/BPEL eingebundenwerden SOA Suite ADF BC Binding-Adapter stelltVerbindungzum ADF BC SDO-Service her BPEL Variablenkönnendirekt auf SDO-Entities (ADF VOs)basieren Veränderungen via Assign in BPEL resultierenunmittelbar in SDO Updates Verwendet SDO/XML over RMI per Default Transaktionssicherheitkanneinfachgewährleistetwerden
37. Java-Bean als SCA-Component: Spring Bean Components Natives SCA-JavaBindingwird von Oracle nichtunterstützt: Alternative: Verwendung von Spring Spring’s Dependency Injection istmit SCA’s Reference Konzeptvergleichbar POJOs (Spring Beans) können in Composite Services orchestriertwerden Könnenauchalsexterne Services exponiertwerden
38. Einbindungeines JavaBeans in ein Composite Add Spring Context to the composite A spring bean configuration file is created Add bean definitions for POJOs based on java interfaces Add SCA: service elements to exposebeans as service to other components Add SCA: reference elements to get service components injected to satisfy a dependency
40. Literaturempfehlung Oracle SOA Suite 11g Handbook Erschienen August 2010 Autor: Lucas Jellema Präsentation und Demos: http://technology.amis.nl/blog
41. Kontakt: Torsten Winterberg Director Strategy & Innovation Head of Competence Center SOAOracle ACE Director OPITZ CONSULTING GmbHKirchstr. 6, 51647 Gummersbach, GermanyPhone: +49 661 6001 0torsten.winterberg@opitz-consulting.com