Konzept eines verteilten, ESB-basierten Systems zur Integration technischer Ereignisse in Geschäftsprozesse. Diplomarbeit von Arne Schramm

Größe: px
Ab Seite anzeigen:

Download "Konzept eines verteilten, ESB-basierten Systems zur Integration technischer Ereignisse in Geschäftsprozesse. Diplomarbeit von Arne Schramm"

Transkript

1 Konzept eines verteilten, ESB-basierten Systems zur Integration technischer Ereignisse in Geschäftsprozesse Diplomarbeit von Arne Schramm geboren am 27. Oktober 1980 in Grimma 15. Juni 2009 Betreuer: Dr.-Ing. Iris Braun externer Betreuer: Dr.-Ing. Jochen Rode Technische Universität Dresden Fakultät Informatik Institut für Rechnernetze

2 Selbstständigkeitserklärung: Hiermit erkläre ich, dass ich diese Arbeit selbstständig erstellt und keine anderen als die angegebenen Hilfsmittel verwendet habe. Dresden, den 15. Juni 2009 Arne Schramm 1

3 Zusammenfassung Viele Entscheidungen in alltäglichen Geschäftsprozessen beruhen auf Daten, welche durch Maschinen und Geräte in der realen Welt ermittelt und bereitgestellt werden. Diese Daten können beispielsweise Statusinformationen von Produktionsmaschinen, GPS-Positionsdaten oder RFID-Scan Ereignisse sein. Die real eingesetzten Lösungen und Maschinen können hierbei von verschiedensten Herstellern stammen und bilden somit ein heterogenes System unterschiedlicher Schnittstellen, Kommunikationsstandards und Platformen. Die Dynamik der Märkte erfordert zudem eine dynamische Infrastruktur der Unternehmen, welche sich auch in der IT-Infrastruktur widerspiegeln muss. Die Herausforderung dieser Arbeit besteht aus der Entwicklung eines hoch skalierbaren, verteilten ESB-basierten Systems zur Integration technischer Ereignisse in Geschäftsprozesse. Um eine ereignisgesteuerte Kommunikation zwischen Geräten und Geschäftsprozessen zu ermöglichen, wurden die Messaging Standards Java Message Service (JMS) und WS-Notification betrachtet. Der Vergleich zeigte, dass WS-Notification über eine ausgereiftere Architektur verfügt, jedoch wenig durch führende Hersteller unterstützt wird. Für JMS existieren hingegen eine Vielzahl ausgereifter Implementationen. Als Integrationslösung wurde das Konzept des Enterprise Service Bus (ESB) vorgestellt und analysiert. Da es keinen einheitlichen ESB Standard gibt, wurden Anforderungen verschiedener Arbeiten zusammengestellt, und ein allgemeiner ESB Architekturvorschlag erstellt. Für die praktische Umsetzung einer ESB Implementierung wurden zwei verschiedene Ansätze analysiert. ESBs auf Grundlage des Java Business Integration Standards verfolgen das Prinzip der Nachrichtenvermittlung (Mediation). Sie eignen sich für lokale, übersichtliche Integrationsszenarien. Der zweite betrachtete Standard, die Service Component Architecture verfolgt das Activation-Modell. Anwendungen bestehen hierbei aus einer Menge von Komponenten, auf welche über verschiedene Middleware synchron oder asynchron zugegriffen werden kann. SCA erhöht somit die Autonomie von Komponenten und kann als eine dezentrale Mediation-Infrastruktur angesehen werden [Dub05]. Die entwickelte Architektur verwendet aus diesen Gründen einen SCA-basierten ESB und JMS als Messaging System. Anhand eines Prototypen wurde dieses Konzept praktisch umgesetzt und evaluiert. Dabei wurde gezeigt, dass das entwickelte System die verschiedenen Anforderungen wie Skalierbarkeit, verteilte Implementation, ereignissgesteuerte Kommunikation oder einfache Anbindung heterogener Systeme erfüllt.

4 Inhaltsverzeichnis 1 Einleitung Motivation Zielsetzung Messaging Standards: Forschungsstand und Analyse Java Messaging Service WS-Notification WS - Base Notification WS - Brokered Notification WS - Topics Vorstellung weiterer Messaging Standards Enterprise Service Bus: Forschungsstand und Analyse Konzept Gründe für den Einsatz von ESBs Anforderungen Kategorisierung der Anforderungen Architektur Service Component Architecture Konzept SCA Beschreibungssprache SCA Komponenten (Components) Dienste, Referenzen und Eigenschaften Verknüpfung von Diensten und Referenzen Verbund von SCA Komponenten (Composite) SCA Domänen (Domains) Java Business Integration Konzept WSDL basiertes Nachrichtenmodell Internes Nachrichtenformat (Normalized Message) JBI Komponenten JBI Management JBI Anwendungen Zusammenfassung

5 4 Konzept Anforderungsanalyse Funktionale Anforderungen Nichtfunktionale Anforderungen Systemkomponenten-Analyse Auswahl eines Messaging Systems Architektur Performance Auswahl einer Enterprise Service Bus Technologie Auswahl weiterer Komponenten Entwurf Allgemeiner Entwurf Messaging Enterprise Service Bus Analyse verfügbarer ESB Implementierungen Anforderungen und Auswahlkriterien Open-Source Implementationen Kommerzielle Implementationen Fazit Prototyp Szenario Szenariobezogene Anforderungsanalyse Funktionale Anforderungen Nichtfunktionale Anforderungen Entwurf Auswahl einer ESB Implementation Weitere Systemkomponenten Zu erstellende Komponenten Implementierung Konfiguration und Modifikation der Systemkomponenten Selbst erstellte Komponenten Evaluation Evaluation der Systemkomponenten Evaluation des Prototypen Performanceanalyse Fazit Schlussfolgerungen Ausblick Anhang 99 2

6 Abbildungsverzeichnis 1.1 Beispielszenario für den Einsatz eines ESB-basierten Systems JMS Architektur nach [HBS + 02] JMS Administration nach [HBS + 02] JMS Kommunikation nach [Abt07] WS-BaseNotification nach [GHM06] Einfache Benachrichtigung nach [CL06] Nachfrage-basierte Benachrichtigung nach [CL06] Topic Namensräume und Hierarchien nach [VGN06] Dienstaufruf über einen ESB nach [MBJ07] Anforderungen an einen ESB (basierend auf [MBJ07]) Abbildungswerkzeug in der Netbeans Entwicklungsumgebung (OpenESB) ESB Architektur SCA Architekturkonzept nach [Cha07] SCA Kommunikationsmechanismen nach [Cha07] Konzept einer SCA Anwendung nach [Cha07] JBI High Level Architektur nach [THW05] Aufbau einer Normalized Message (aus [THW05]) Anwendungen in JBI Verteilte Brokerarchitektur mit WS-Notification Szenario für die Prototypen zum Leistungsvergleich Nachrichtenfluss beim JMS Prototyp Nachrichtenfluss beim WS-Notification Prototyp Häufigkeitsverteilung der Messwerte von 1000 einzelnen Nachrichten ohne Verbindungsaufbau SCA Activation und JBI Invocation nach [Dub05] Architekturentwurf Werkzeugunterstützung für OpenESB in Netbeans WSO2 Werkzeugunterstützung Szenario des Prototypen SCA Composite der Produktionsverwaltung SCA Composite des Produktionsprozesses SCA Composite der XML Datenbank SCA Composite der Robotersteuerung SCA Composite der Fräsensteuerung

7 6.7 SCA Composite des Druckertreibers Browserbasierte Domänenverwaltung in Apache Tuscany Benutzeroberfläche des Prototyps Ablauf der Produktionsverwaltung Speicherbelegung der einzelnen Komponenten Performancemessung des Prototypen Bestimmung des Kommunikationsaufwandes Häufigkeitsverteilung der Messwerte von 100 JMS Nachrichten mit Apache Tuscany Benötigte Gesamtzeit für einzelne Benachrichtigungen (praktischer Leistungsvergleich in Kapitel 4.3.2) Benötigte Zeiten für 100 Nachrichten (praktischer Leistungsvergleich in Kapitel 4.3.2) Benötigte Zeiten für 1000 Nachrichten (praktischer Leistungsvergleich in Kapitel 4.3.2) Benötigte Zeiten für Nachrichten (praktischer Leistungsvergleich in Kapitel 4.3.2) Zusammenspiel aller SCA Komponenten des Prototyps (Kapitel 6.3.3) Sequenzdiagramm des Prototypen (Kommunikation über JMS) (Kapitel 6.3.3) Ordnung der in Kapitel 5 vorgestellen ESB Implementierungen

8 Listings 2.1 Notify Nachricht nach [GHM06] Subscribe Nachricht nach [GHM06] RegisterPublisher Nachricht nach [CL06] Topic Namespace Element nach [VGN06] Topic Element nach [VGN06] Beispiel: Simple TopicExpression Dialect nach [VGN06] Beispiel: Concrete TopicExpression Dialect nach [VGN06] Component Beispiel in SCDL Service, Reference und Property Beispiel in SCDL Binding Beispiel in SCDL Composite Beispiel in SCDL Text Nachricht nach [HBS + 02] Notify Nachricht nach [GHM06] ActiveMQ Konfiguration Ausgabe des XQuery Skripts Fehlerhafte Beschreibung einer BPEL Komponente (durch Tuscany SCA Editor erzeugt) Korrekte Beschreibung einer BPEL Komponente

9 Abkürzungsverzeichnis AXIOM BC BPEL CDDL CORBA CPAL CRM DAS EJB EPL ERP ESB GPL HTTP J2EE Java EE JAXB JBI JCP JMS JMX JNDI LGPL MES AXis Object Model Binding Component (JBI) Business Process Execution Language Common Development and Distribution License Common Object Request Broker Architecture Common Public Attribution License Customer Relationship Management Data Access Service Enterprise JavaBeans Eclipse Public License Enterprise Resource Planning Enterprise Service Bus General Public License Hypertext Transfer Protocol frühere Bezeichnung von Java EE Java Platform, Enterprise Edition Java Architecture for XML Binding Java Business Integration Java Community Process Java Message Service Java Management Extensions Java Naming and Directory Interface Lesser General Public License Manufacturing Execution Systems 6

10 NMR Normalized Message Router OASIS Organization for the Advancement of Structured Information Standards OSOA Open Service Oriented Architecture P2P PMC POJO QoS RMI RPC SA SCA SCDL SCM SDO SE SNMP SOA SOAP SU Peer-to-Peer Project Management Committee Plain Old Java Object Quality of Service Remote Method Invocation Remote Procedure Call Service Assembly (JBI) Service Component Architecture Service Component Definition Language Supply Chain Management Service Data Objects Service Engine (JBI) Simple Network Management Protokoll Service Oriented Architecture Simple Object Access Protocol Service Unit (JBI) UDDI Universal Description, Discovery and Integration UML Unified Modeling Language URI Uniform Resource Identifier WCF WSDL XML XSL XSLT Windows Communication Foundation Web Service Description Language Extensible Markup Language Extensible Stylesheet Language XSL Transformations 7

11 Kapitel 1 Einleitung 1.1 Motivation Viele Entscheidungen in alltäglichen Geschäftsprozessen beruhen auf Daten, welche durch Maschinen und Geräte in der realen Welt ermittelt und bereitgestellt werden. Diese Daten können beispielsweise Statusinformationen von Produktionsmaschinen, GPS-Positionsdaten oder RFID-Scan Ereignisse sein. Aufgrund dieser Daten können neue Prozesse gestartet, weitere Arbeitsschritte geplant oder laufende Prozesse überwacht werden. Der Ablauf dieser Geschäftsprozesse wird häufig durch den Einsatz geeigneter Softwarelösungen gesteuert. Um der Prozesssteuerung die Möglichkeit zu geben, auf Ereignisse und Daten zu reagieren, müssen diese in die Geschäftsprozesse integriert werden können. Hierfür müssen die Datenerfassungsgeräte über entsprechende Dienste und Schnittstellen verfügen, welche von den jeweiligen Geschäftsprozessen genutzt werden können. Das Prinzip der Service-orientierten Architekturen hat sich hierfür in vielen Bereichen durchgesetzt. Besonders geschäftliche Umgebungen zeichnen sich dabei jedoch oft durch Heterogenität aus. Das bedeutet, dass verschiedene Softwarekomponenten in unterschiedlichen Sprachen implementiert sind und keine einheitlichen Schnittstellen genutzt werden. Dies führt zu der Herausforderung, diese Systeme so ineinander zu integrieren, dass Dienste einzelner Anbieter im gesamten System genutzt werden können. Zur Lösung dieses Problems existieren bereits mehrere Ansätze. Verschiedene Komponenten können zum Beispiel über gemeinsam genutzte Dateien Informationen austauschen. Dies bedarf eines wohldefinierten Dateiformates und führt zu einer zeitversetzten Verarbeitung der Nachrichten. Eine weitere Möglichkeit der Kommunikation bietet die Nutzung einer gemeinsamen Datenbank. Der Vorteil besteht in der Transaktionsverwaltung, welche bei einfachem Dateitransfer nicht gegeben ist. Nachrichten werden jedoch auch bei diesem Ansatz weiterhin zeitversetzt bearbeitet. Das Prinzip der Remote-Procedure-Invocation erlaubt eine direkte Kommunikation zwischen verschiedenen Komponenten. Deren Funktionalität wird gekapselt und über gemeinsame Schnittstellen zur Verfügung gestellt. Beispiele hierfür sind CORBA oder Java RMI. Ein hohes Maß an Erreichbarkeit kann an dieser Stelle durch die Nutzung von Web Services, welche auf offenen Standards wie SOAP und XML basieren, erzielt werden. Der Einsatz einer solchen Lösung in größeren Umgebungen führt jedoch zu unübersichtlichen, schlecht skalierbaren und unzuverlässigen Systemen [HW03]. Eine Möglichkeit, dieses Problems zu lösen, ist der Einsatz eines Messaging Systems. Nachrichten werden nicht mehr direkt an den Empfänger, sondern an 8

12 einen Messaging-Bus gesendet. Dieser leitet die Nachricht dann direkt oder zeitversetzt an den Empfänger. Die Voraussetzung für den Einsatz eines solchen Systems ist, dass alle Komponenten eine Schnittstelle bereitstellen, die es ihnen ermöglicht, mit dem Messaging-Bus zu kommunizieren. In Systemen deren Komponenten alle entsprechend erstellt oder modifiziert werden können ist dieser Ansatz erfolgversprechend. In vielen Szenarien wie beispielsweise dem eines Produktionsprozesses innerhalb einer Fabrik kommen jedoch Komponenten verschiedenster Hersteller zum Einsatz. Diese können oft nicht ohne weiteres beeinflusst oder angepasst werden. Wünschenswert ist an dieser Stelle ein erweiterter Messaging-Bus, welcher verschiedene Transportprotokolle unterstützen, und Nachrichteninhalte transformieren kann. Dieser kann als Rückgrad einer service-orientierten Systemlandschaft dienen, und die Interopabilität aller Komponenten gewährleisten. In den Prognosen für das Jahr 2003 prägte Roy W. Schulte, ein Analyst der Firma Gartner Inc. den Begriff Enterprise Service Bus. Definiert wurde dieser als eine neue Kategorie von Infrastruktur-Software, welche neben Web Services auch asynchrone store-and-forward Weiterleitung (Teilstreckenverfahren), Nachrichtentransformation, Publish/Subscribe Verfahren und inhaltsbezogenes Routing unterstützt [Sch02]. Durch das gleichnamige Buch von David A. Chappel wurde der Begriff weiter verbreitet. Bis heute gibt es eine Reihe, teils widersprüchlicher Veröffentlichungen zu diesem Thema, ohne jedoch einen Standard für ESBs zu schaffen wurde die Java Business Integration Spezifikation des Java Community Process veröffentlicht [THW05]. Diese wurde seit dem als Grundlage mehrerer ESB Implementationen genutzt. Im März 2007 wurden die ersten finalen Versionen verschiedener Teile der Service Component Architecture Spezifikation veröffentlicht. Diese wurden ursprünglich unter anderem von BEA, IBM, IONA, Oracle und SAP entwickelt. Während der Fokus von JBI auf der Vermittlung von Nachrichten (mediation) liegt, verfolgt SCA das Konzept der Aktivierung (activation). Letzteres ermöglicht eine verteilte Infrastruktur, deren Komponenten unabhängiger voneinander agieren können. SCA wird, wie JBI, als Grundlage für die Implementation von ESBs diskutiert. Verschiedene Firmen, wie beispielsweise SAP oder IBM, arbeiten bereits an Umsetzungen oder haben diese fertiggestellt. Einleitendes Beispiel Die Einsatzmöglichkeiten eines ESB-basierten Systems als Grundlage geschäftlicher Integrationslösungen werden anhand des folgenden Beispiels verdeutlicht. Eine Firma produziert Bauteile für Möbel an zwei verschiedenen Standorten. In der Zentrale werden die Bauteile zu fertigen Möbeln zusammengesetzt und verkauft. Zur Produktion der Bauteile und zur Erfassung der Daten beim Verkauf werden Maschinen verschiedener Hersteller eingesetzt. Diese verfügen über unterschiedliche Schnittstellen um in IT-Systeme eingebunden werden zu können. Durch den Einsatz eines ESB-basierten Systems soll die Kommunikation zwischen den Maschinen und den Geschäftssystemen mit geringem Konfigurationsaufwand ermöglicht werden. Durch die Verteilung des ESB auf die verschiedenen Standorte werden erfasste Daten je nach Relevanz weitergeleitet. Standort A produziert die benötigten Kleinteile für die Möbel. Die Aufträge für die Produktion werden im Rahmen eins Geschäftsprozesses von der Zentrale erteilt. Vor Ort wird die Produktion durch eine lokale Prozesssteuerung überwacht. Das Material wird dem lokalen 9

13 Lager entnommen und nach Abschluss der Produktion werden die Bauteile an die Zentrale versandt. Änderungen des Lagerbestandes sowie der Versand werden dem Zentralen System mitgeteilt, der Ablauf der einzelnen Produktionsschritte jedoch nicht. Bei Unterschreiten eines Grenzwertes im Lager wird automatisch neues Material durch die Zentrale bestellt. Am Standort B werden große Holzteile für die Möbel hergestellt. Auch diese Produktion ist Bestandteil eines zentralen Geschäftsprozesses. Die Verwaltung des lokalen Lagers wird ebenfalls durch das zentrale System durchgeführt. Das eingesetzte System muss in der Lage sein, die verschiedenen Nachrichten über unterschiedliche Protokolle zu senden und zu empfangen. Des Weiteren muss das System leicht und kostenoptimal erweiterbar sein, um auf veränderte betriebswirtschaftliche Anforderungen reagieren zu können. Diese Eigenschaft garantiert die Zukunftssicherheit des Systems, und bietet somit, gemeinsam mit den Integrationsmöglichkeiten, dem Kunden einen hohen sowohl vergangenheits- als auch zukunftsorientierten Investitionsschutz. Abbildung 1.1 verdeutlicht das beschriebene Szenario. 1.2 Zielsetzung Ziel der Arbeit ist, ein Konzept für ein hoch skalierbares, verteiltes ESB-basiertes System zur Integration technischer Ereignisse in Geschäftsprozesse zu entwickeln. Zu diesem Zweck soll zunächst ein geeignetes Messaging System gefunden werden, um eine ereignissgesteuerte, bidirektionale Kommunikation verschiedener Komponenten zu ermöglichen. In einem weiteren Schritt wird das Konzept des Enterprise Service Bus detailliert betrachtet und bezüglich seiner Eignung für Integrationsszenarien bewertet. In diesem Zusammenhang werden die zwei einführend vorgestellten Technologien Service Component Architecture und Java Business Integration näher betrachtet und gegenübergestellt. Die somit erarbeiteten Grundlagen werden benötigt, um ein Konzept des geforderten Systems zu entwerfen und dieses zu bewerten. Abschließend wird eine Bewertung und Bestätigung des Konzeptes anhand eines proof-of-concept-prototypen vorgenommen. 10

14 ESB Zentrale (Montage und Verkauf) Zentrale ESB Lager Wareneingang Kassensystem Montage ERP (RFID Gate) Zentrale DB Standort A (Produktion Kleinteile) Standort B (Produktion großer Holzteile) Produktion Lager Fabrik Lager Maschine A1 Maschine A2 Maschine A.. Maschine B1 Maschine B2 Maschine B.. ESB Warenausgang (RFID Gate) Prozesssteuerung Prozesssteuerung Warenausgang (RFID Gate) Abbildung 1.1: Beispielszenario für den Einsatz eines ESB-basierten Systems 11

15 Kapitel 2 Messaging Standards: Forschungsstand und Analyse In diesem Kapitel werden die zwei Messaging Standards Java Messaging Service und Web Service Notification vorgestellt. Beide Technologien verfolgen den Ansatz der Message-Oriented-Middleware (MOM) um Nachrichten zwischen zwei oder mehr Teilnehmern zu vermitteln. Sender ordnen Nachrichten hierfür bestimmten Kategorien zu. Diese werden von Empfängern abonniert, so dass sie alle relevanten Nachrichten erhalten. Bei einem Publish/Subscribe System werden Nachrichten automatisch und sofort an alle Abonnenten verteilt. Eine weitere Möglichkeit ist der Einsatz von MessageQueues. Dabei werden Nachrichten innerhalb der MOM in einer Warteschlange gespeichert, und typischerweise von einem Empfänger bei Bedarf gelesen. Dadurch wird eine 1:1 Kommunikation zwischen Sender und Empfänger mit zeitlicher Unabhängigkeit geschaffen. Da die Zielsetzung der Arbeit eine Publish/Subscribe-basierte Kommunikation umfasst, werden MessageQueues im Folgenden nicht näher behandelt. Die Einführung der zwei Messaging Systeme in diesem Kapitel bildet die Grundlage für die Gegenüberstellung und Bewertung beider Standards in Kapitel Java Messaging Service Die Spezifikation des Java Messaging Service (JMS) wurde in ihrer aktuellen Version 1.1 im April 2002 von Sun Microsystems veröffentlicht. Sie beschreibt Schnittstellen (Interfaces) mit denen es einem Client möglich ist, sich bei einem Messaging Provider zu registrieren, um Nachrichten zu erhalten und zu senden. Dies kann entweder synchron über MessageQueues oder asynchron mittels Publish/Subscribe Mechanismen durchgeführt werden. Da der Fokus der vorliegenden Arbeit auf asynchroner Kommunikation liegt, wird im Folgenden nicht weiter auf MessageQueues eingegangen. Um JMS nutzen zu können, wird ein JMS Provider benötigt, der diese Interfaces implementiert. Die folgenden Beschreibungen sind, sofern nicht anders gekennzeichnet, der JMS Spezifikation [HBS + 02] entnommen. 12

16 Architektur Eine JMS Anwendung setzt sich aus folgenden Teilen zusammen: JMS Clients - Java Programme welche in der Lage sind, Nachrichten (Messages) zu senden und zu empfangen. Non-JMS Clients - Anwendungen, welche eine andere API als JMS verwenden. Dies ist besonders dann zu erwarten, wenn Teile der Anwendung erstellt wurden, bevor JMS verfügbar war. Messages - Eine von der Anwendung definierte Menge von Nachrichten, welche genutzt werden, um Informationen zwischen den Clients auszutauschen. JMS Provider - Ein Nachrichtensystem, welches JMS implementiert. Administered Objects - Durch den Administrator vordefinierte JMS Objekte, welche vom Client genutzt werden können. Abbildung 2.1 zeigt die typische Architektur einer JMS Anwendung. Message Message JMS Client (Publisher) Publish JMS Provider Publish JMS Client (Subscriber) Abbildung 2.1: JMS Architektur nach [HBS + 02] Administration Da es sich bei JMS um eine Definition von Interfaces handelt, ist davon auszugehen, dass sich die verschiedenen Implementationen hinsichtlich ihrer zugrundeliegenenden Messaging-Technolgie, Installation und Administration stark unterscheiden. Um Clients unabhängig von diesen proprietären Aspekten gestalten zu können, wurde das Konzept der Administered Objects eingeführt (Grafik 2.2). Auf diese kann ein Client über definierte Schnittstellen zugreifen. Es gibt zwei Typen von Administered Objects. 1. ConnectionFactory - Mit Hilfe dieses Objektes kann ein Client eine Verbindung (Connection) zu einem JMS Provider aufbauen. 2. Destination - Dieses Objekt dient dem Client dazu, das Ziel seiner zu sendenden Nachrichten, oder die Quelle der zu empfangenden Nachrichten, festzulegen. Aufbau der Kommunikation Connection Die ConnectionFactory ist eines der Administered Objects. Sie kann über einen JNDI Namespace (Namensraum) gefunden werden. Mit ihrer Hilfe wird eine Connection erstellt. Dabei handelt es sich um eine aktive Verbindung zwischen JMS Client und - Provider. Sie erfüllt mehrere Aufgaben: 13

17 Administration Ressourcen eintragen Connection Factory JNDI Namespace Destination Ressourcen finden Client Logische Verbindung JMS Provider Abbildung 2.2: JMS Administration nach [HBS + 02] Kapseln einer offenen Verbindung mit einem JMS Provider. Im Allgemeinen handelt es sich um einen TCP/IP Socket. Authentifizierung des Clients bei der Erstellung der Connection Erstellen von Session Objekten Bereitstellen von Metadaten Unterstützen eines ExceptionListeners Session Eine JMS Session stellt die nötige Umgebung zur Verfügung, um Nachrichten (Messages) zu erzeugen und zu empfangen. Dazu gehören folgende Funktionalitäten: Factory für MessageProducer und MessageConsumer Factory für TemporaryTopics und TemporaryQueues Dynamische Erzeugung von Destinations Factory für Messages Transaktionsuntertsützung um Arbeitsschritte in atomare Einheiten zu unterteilen Definition einer seriellen Ordnung für Messages Aufbewahrung von Messages bis diese bestätigt wurden Steuerung der Ausführungsreihenfolge registrierter MessageListeners Factory für QueueBrowser Eine Session kann entweder transactional oder nontransactional sein. Transactional Sessions erlauben es dem Client, das Versenden oder Empfangen von Nachrichten, in atomare Arbeitsschritte zu gruppieren. [MFP06] 14

18 Message Eine JMS Message besteht aus einem Header, Properties und einem Body. Jede Nachricht unterstützt die selben Typen von Headereinträgen. Diese dienen sowohl Client als auch Provider zur Identifikation und zum Routing der Message. Neben den Standardeinträgen, wie JMSMessageID, JMSTimestamp oder JMSDeliveryMode, werden weitere Eigenschaften (Properties) unterstützt. Anwendungsspezifische Properties Standard-Properties - dies sind optionale Headereinträge Provider-spezifische Properties Der Body beinhaltet die Nachricht selbst. Diese kann in mehreren Formen vorliegen. ByteMessage: nicht von JMS interpretierter Datenstrom StreamMessage: Abfolge von primitiven Java-Werten, welche sequentiell verarbeitet werden TextMessage: Daten in Form eines zusammenhängenden Textes (z.b. XML) MapMessage: Schlüssel-Wert Paare ObjectMessage: Übertragung serialisierbarer Java-Objekte In vielen Fällen ist es nötig, Nachrichten anhand fest definierter Kriterien zu filtern. Dies kann, im einfachsten Fall, vom Empfänger der Nachricht selbst durchgeführt werden. Wird die Nachricht jedoch an mehrere Interessenten verteilt, ist es sinnvoller, sie bereits beim Provider zu filtern. Durch diese Vorgehensweise werden weniger Nachrichten gesendet und dadurch Zeit und Bandbreite eingespart. Ein weiterer Vorteil ist die Entlastung der Clients und der daraus resultierende, geringere Implementierungsaufwand. JMS bietet zu diesem Zweck die Möglichkeit, Message Selector-Ausdrücke im Header der Nachricht zu definieren. Diese können vom Provider gelesen und ausgewertet werden. Ein Message Selector ist eine Zeichenkette, deren Syntax auf einer Teilmenge von SQL92-Conditional-Expression aufgebaut ist. Wird ein Message Selector mit dem Ergebniss TRUE ausgwertet, wird die Nachricht versandt, anderenfalls nicht. Messages können entweder synchron oder asynchron verarbeitet werden, das bedeutet entweder mittels pull oder push. Außerdem können Messages persistent oder flüchtig sein. Persistente Messages werden genau einmal ausgeliefert, sie können nicht durch einen Fehler beim Provider verloren gehen. Flüchtige Nachrichten werden im Gegensatz dazu höchstens einmal ausgeliefert. Das bedeutet, dass sie möglicherweise verloren gehen können. [MFP06] MessageProducer Ein MessageProducer wird von einem Client genutzt, um Nachrichten an eine bestimmte Adresse (Destination) zu senden. Ein MessageProducer wird erstellt, indem bei einem Session-Objekt die createproducer-methode mit einer Queue oder einem Topic als Parameter aufgerufen wird. Ein Client hat die Möglichkeit einem MessageProducer zu erstellen, ohne ihm eine Zieladresse (Destination) zu übergeben. In diesem Fall muss die Destination bei jedem Senden festgelegt werden. Außerdem können der Modus in dem gesendet wird (persistent, flüchtig), die Priorität und die Lebensdauer jeder Nachricht festgelegt werden. 15

19 MessageConsumer Ein Client benötigt einen MessageConsumer um Nachrichten von einer bestimmten Quelle zu empfangen. Er wird erstellt, indem der createconsumer-methode einer Session eine Queue oder ein Topic übergeben wird. Dem MessageConsumer kann ein Message Selector zugewiesen werden, um Nachrichten zu filtern. Abbildung 2.3 stellt den Ablauf einer JMS-basierten Kommunikation zusammenfassend dar. Connection Factory creates Connection creates Session creates creates creates Message Producer Message Message Consumer Sends to Destination Reveives from Abbildung 2.3: JMS Kommunikation nach [Abt07] 16

20 2.2 WS-Notification Web Services Notification (WSN) wurde im October 2006 von der OASIS (Organization for the Advancement of Structured Information Standards) standardisiert. Die aktuelle Version 1.3 besteht aus den folgenden drei Dokumenten: Web Services Base Notification - definiert die NotificationConsumer- und NotificationProducer Schnittstellen. Diese werden benötigt, um eine direkte Benachrichtigung zwischen Erzeugern und Empfängern zu ermöglichen. Es werden sowohl Nachrichten als auch deren Austausch beschrieben. Empfänger von Nachrichten (NotificationConsumer) registrieren sich direkt bei den Nachrichtenproduzenten NotificationProducer. Nachrichten werden mit Hilfe von selector expressions gefiltert. Web Services Brokered Notification - definiert Schnittstellen, Nachrichten und deren Austausch, um eine indirekte Benachrichtigung über einen Vermittler (NotificationBroker) zu ermöglichen. Web Services Topics - definiert topics, topic-spaces, topic-trees und topic-expressions um Nachrichten inhaltsbezogen einordnen zu können. Im Folgenden werden die einzelnen Teile der Spezifikation detailierter erläutert WS - Base Notification Die folgenden Angaben sind der Web Service Base Notification Spezifikation [GHM06] entnommen. NotificationProducer NotificationConsumer Subscribe Notify Abbildung 2.4: WS-BaseNotification nach [GHM06] 17

Ein Vergleich zwischen SCA,JBI und WCF. Marcello Volpi

Ein Vergleich zwischen SCA,JBI und WCF. Marcello Volpi Service Component Architecture Ein Vergleich zwischen SCA,JBI und WCF Marcello Volpi Agenda Einführung Service Component Architecture (SCA) Java Business Integration (JBI) Windows Communication Foundation

Mehr

Webservices. 1 Einführung 2 Verwendete Standards 3 Web Services mit Java 4 Zusammenfassung. Hauptseminar Internet Dienste

Webservices. 1 Einführung 2 Verwendete Standards 3 Web Services mit Java 4 Zusammenfassung. Hauptseminar Internet Dienste Hauptseminar Internet Dienste Sommersemester 2004 Boto Bako Webservices 1 Einführung 2 Verwendete Standards 3 Web Services mit Java 4 Zusammenfassung Was sind Web Services? Web Services sind angebotene

Mehr

Praktikum aus Softwareentwicklung 2. Web Services. Java Praktikum SS 2010 Gerald.Ehmayer@borland.com

Praktikum aus Softwareentwicklung 2. Web Services. Java Praktikum SS 2010 Gerald.Ehmayer@borland.com Web Services Java Praktikum SS 2010 Gerald.Ehmayer@borland.com 1 Web Services Einführung Definition, Eigenschaften, Anwendungen... JAX-RPC Überblick, Architektur... JAX Übersicht, Architektur Java Praktikum

Mehr

Kapitel 8: Nachrichtenbasierte Kommunikation mit JMS. Middleware in Java vieweg 2005 Steffen Heinzl, Markus Mathes

Kapitel 8: Nachrichtenbasierte Kommunikation mit JMS. Middleware in Java vieweg 2005 Steffen Heinzl, Markus Mathes Kapitel 8: Nachrichtenbasierte Kommunikation mit JMS Middleware und nachrichtenorientierte Middleware Eine Software heißt Middleware genau dann, wenn sie die Entwicklung und den Betrieb eines verteilten

Mehr

Java und XML 2. Java und XML

Java und XML 2. Java und XML Technische Universität Ilmenau Fakultät für Informatik und Automatisierung Institut für Praktische Informatik und Medieninformatik Fachgebiet Telematik Java und XML Hauptseminar Telematik WS 2002/2003

Mehr

Softwareentwicklung mit Enterprise JAVA Beans

Softwareentwicklung mit Enterprise JAVA Beans Softwareentwicklung mit Enterprise JAVA Beans Java Enterprise Edition - Überblick Was ist J2EE Java EE? Zunächst mal: Eine Menge von Spezifikationen und Regeln. April 1997: SUN initiiert die Entwicklung

Mehr

Entwicklung von Web-Anwendungen auf JAVA EE Basis

Entwicklung von Web-Anwendungen auf JAVA EE Basis Entwicklung von Web-Anwendungen auf JAVA EE Basis Java Enterprise Edition - Überblick Prof. Dr. Bernhard Schiefer Inhalt der Veranstaltung Überblick Java EE JDBC, JPA, JNDI Servlets, Java Server Pages

Mehr

JMS Java Message Service

JMS Java Message Service JMS Java Message Service TK3 - WS03/04 Dipl.-Ing. Erwin Aitenbichler Abt. Telekooperation TU Darmstadt 1 JMS: Java Message Service Messaging Lose gekoppelte verteilte Kommunikation RMI: Eng gekoppelt Sender

Mehr

Evaluation of Java Messaging Middleware as a Platform for Software Agent Communication

Evaluation of Java Messaging Middleware as a Platform for Software Agent Communication Evaluation of Java Messaging Middleware as a Platform for Software Agent Communication Frank Kargl Torsten Illmann Michael Weber Verteilte Systeme Universität Ulm {frank.kargl torsten.illmann weber} @informatik.uni-ulm.de

Mehr

Message Oriented Middleware am Beispiel von XMLBlaster

Message Oriented Middleware am Beispiel von XMLBlaster Message Oriented Middleware am Beispiel von XMLBlaster Vortrag im Seminar XML und intelligente Systeme an der Universität Bielefeld WS 2005/2006 Vortragender: Frederic Siepmann fsiepman@techfak.uni bielefeld.de

Mehr

Web Services. XML, WSDL, SOAP und UDDI Einblicke und Ausblicke. 31.03.2003 J.M.Joller 1

Web Services. XML, WSDL, SOAP und UDDI Einblicke und Ausblicke. 31.03.2003 J.M.Joller 1 Web Services XML, WSDL, SOAP und UDDI Einblicke und Ausblicke 31.03.2003 J.M.Joller 1 Inhalt Architekturen Main Stream.NET J2EE und Applikations-Server Sicht der Anbieter Java J2EE J2EE versus.net Web

Mehr

Gliederung. 1. Einleitung (1) 1. Einleitung (3) 1. Einleitung (2)

Gliederung. 1. Einleitung (1) 1. Einleitung (3) 1. Einleitung (2) Referat im Rahmen des Proseminars Internettechnologie WS 2007/2008 Thema: Web Services und serviceorientierte Architekturen (SOA) vorgelegt von: Intelligente Web Services sind für das Informationszeitalter,

Mehr

Christoph Mathas. SOA intern. » Praxiswissen zu Service-orientierten IT-Systemen HANSER

Christoph Mathas. SOA intern. » Praxiswissen zu Service-orientierten IT-Systemen HANSER Christoph Mathas SOA intern» Praxiswissen zu Service-orientierten IT-Systemen HANSER Inhalt Vorwort XI 1 Einleitung 1 1.1 Wem nützt dieses Buch? 2 1.2 Weshalb dieses Buch? 3 1.3 Die Kapitelstruktur 4 1.4

Mehr

Autor: Peter Seemann Seminar: Softwarearchitekturen Betreuer: Benedikt Meurer

Autor: Peter Seemann Seminar: Softwarearchitekturen Betreuer: Benedikt Meurer Autor: Peter Seemann Seminar: Softwarearchitekturen Betreuer: Benedikt Meurer *Was sind Web Services? *Beispiele für Web Services *Web Service Architektur *Web Services Technologien *Fazit 2 *Übertragungsstandard

Mehr

Client/Server-Systeme

Client/Server-Systeme Fachbereich Informatik Projektgruppe KOSI Kooperative Spiele im Internet Client/Server-Systeme Vortragender Jan-Ole Janssen 26. November 2000 Übersicht Teil 1 Das Client/Server-Konzept Teil 2 Client/Server-Architekturen

Mehr

Wiederholung: Beginn

Wiederholung: Beginn B) Webserivces W3C Web Services Architecture Group: "Ein Web Service ist eine durch einen URI eindeutige identifizierte Softwareanwendung, deren Schnittstellen als XML Artefakte definiert, beschrieben

Mehr

Java 2, Enterprise Edition Einführung und Überblick

Java 2, Enterprise Edition Einführung und Überblick Universität aiserslautern AG Datenbanken und Informationssysteme Seminar Datenbank-Aspekte des E-Commerce Java 2, Enterprise Edition Einführung und Überblick m_husema@informatik.uni-kl.de Vortragsinhalte

Mehr

Seminarbericht Rechnernetze XML Web Services Schnittstelle zwischen den Welten.NET und Java

Seminarbericht Rechnernetze XML Web Services Schnittstelle zwischen den Welten.NET und Java Seminarbericht Rechnernetze XML Web Services Schnittstelle zwischen den Welten.NET und Java von Christian Brand Kennnummer: 09376 November 2005 Abkürzungen Abkürzungen API - Application Programming Interface

Mehr

Workflow, Business Process Management, 4.Teil

Workflow, Business Process Management, 4.Teil Workflow, Business Process Management, 4.Teil 24. Januar 2004 Der vorliegende Text darf für Zwecke der Vorlesung Workflow, Business Process Management des Autors vervielfältigt werden. Eine weitere Nutzung

Mehr

Grundlagen des Grid Computing

Grundlagen des Grid Computing Grundlagen des Grid Computing Service Oriented Architectures ICA Joh. Kepler Universität Linz Überblick Service-Oriented Architectures (SOAs) Verteilt Basierend auf Standards Lose gekoppelt Protokoll-unabhängig

Mehr

Oracle Advanced Queuing AQ

Oracle Advanced Queuing AQ Oracle Advanced Queuing AQ 13.09.2012 Referenten: Claus Cullmann Andreas Steinel Inhalt Motivation Message Systeme Eigenschaften, Beispiele Oracle AQ Terminologie AQ Beispiel pure SQL Beispiel Java-Anwendung

Mehr

Zustandsgebundene Webservices

Zustandsgebundene Webservices Zustandsgebundene Webservices Präsentation ausgewählter Problemstellungen der Informatik Markus Oertel oer@uni-paderborn.de Universität Paderborn 25. September 2005 Zustandsgebundene Webservices Seite

Mehr

Grid-Systeme. Betrachtung verschiedener Softwareplattformen zur Realisierung von Grids und Vorstellung des Globus Toolkit. 07.06.2002 Grid Systeme 1

Grid-Systeme. Betrachtung verschiedener Softwareplattformen zur Realisierung von Grids und Vorstellung des Globus Toolkit. 07.06.2002 Grid Systeme 1 Grid-Systeme Betrachtung verschiedener Softwareplattformen zur Realisierung von Grids und Vorstellung des Globus Toolkit 07.06.2002 Grid Systeme 1 Gliederung Vorstellung verschiedener Plattformen Globus

Mehr

Enterprise Service Bus

Enterprise Service Bus Enterprise Service Bus Christopher Weiß 25.01.2010 Gliederung 1 Motivation und Einordung Integrationsformen 2 Definition und Eigenschaften Definitionen Eigenschaften 3 Aufbau und Konzepte Aufbau Produkte

Mehr

E-Services mit der Web-Service-Architektur

E-Services mit der Web-Service-Architektur E-Services mit der Web-Service-Architektur im Seminar Neue Konzepte anwendungsorientierter Middleware - Stefan Kürten - Literatur A. Tsalgatidou and T. Pilioura, An Overview of Standards and Related Rechnology

Mehr

WSDL. Web Services Description Language. André Vorbach. André Vorbach

WSDL. Web Services Description Language. André Vorbach. André Vorbach André Vorbach WSDL Web Services Description Language André Vorbach Übersicht Was ist WSDL? Dokumentenstruktur Elemente Definitions Types Messages porttype Binding Service SOAP-Bindings Beispiel Was ist

Mehr

SOA goes real Service-orientierte Architekturen erfolgreich planen und einführen

SOA goes real Service-orientierte Architekturen erfolgreich planen und einführen Daniel Liebhart SOA goes real Service-orientierte Architekturen erfolgreich planen und einführen ISBN-10: 3-446-41088-0 ISBN-13: 978-3-446-41088-6 Inhaltsverzeichnis Weitere Informationen oder Bestellungen

Mehr

Enterprise Softwarearchitekturen in Java

Enterprise Softwarearchitekturen in Java Enterprise Softwarearchitekturen in Java Dauer: 5 Tage 1. Tag: Vorbereitungstag...2 Der erste Tag richtet sich an alle, die bislang wenig Praxiserfahrung mit der Programmiersprache Java haben. Die Teilnehmer

Mehr

ENTWICKLUNGS- UND LAUFZEITUMGEBUNG DER CSE: ECLIPSE UND JBOSS. Piotr Kasprzak

ENTWICKLUNGS- UND LAUFZEITUMGEBUNG DER CSE: ECLIPSE UND JBOSS. Piotr Kasprzak ENTWICKLUNGS- UND LAUFZEITUMGEBUNG DER CSE: ECLIPSE UND JBOSS Piotr Kasprzak Agenda Laufzeitumgebung Java EE (J2EE) Motivation APIs / Technologien JBoss Entwicklungsumgebung Eclipse Ausblick Java EE -

Mehr

PRODATIS CONSULTING AG. Folie 1

PRODATIS CONSULTING AG. Folie 1 Folie 1 Führend im Gartner Magic Quadranten für verteilte, interagierende SOA Projekte Oracle ist weltweit auf Rang 1 auf dem Markt der Enterprise Service Bus Suiten (ESB) für SOA Software 2010 26,3 %

Mehr

Seminarvortrag Serviceorientierte Softwarearchitekturen

Seminarvortrag Serviceorientierte Softwarearchitekturen Seminarvortrag Serviceorientierte Softwarearchitekturen vorhandene Altsysteme Gliederung Einführung Grundlegende Modelle Grundlegende Komponenten Architekturen 2 Einführung Altanwendung und Altsysteme?

Mehr

SOA. Prof. Dr. Eduard Heindl Hochschule Furtwangen Wirtschaftsinformatik

SOA. Prof. Dr. Eduard Heindl Hochschule Furtwangen Wirtschaftsinformatik SOA Prof. Dr. Eduard Heindl Hochschule Furtwangen Wirtschaftsinformatik Laderampen müssen passen Modularisieren Softwarearchitektur Modul A Modul B Modul C Modul D Große Anwendung im Unternehmen Modul

Mehr

Eclipse Equinox als Basis für Smart Client Anwendungen. Christian Campo, compeople AG, 5.7.2007 Java Forum Stuttgart 2007

Eclipse Equinox als Basis für Smart Client Anwendungen. Christian Campo, compeople AG, 5.7.2007 Java Forum Stuttgart 2007 Eclipse Equinox als Basis für Smart Client Anwendungen Christian Campo, compeople AG, 5.7.2007 Java Forum Stuttgart 2007 Übersicht Definition / Architektur Smart Client Smart Client mit RCP / Equinox Gesamtfazit

Mehr

.NET-Networking 2 Windows Communication Foundation

.NET-Networking 2 Windows Communication Foundation .NET-Networking 2 Windows Communication Foundation Proseminar Objektorientiertes Programmieren mit.net und C# Fabian Raab Institut für Informatik Software & Systems Engineering Agenda Grundproblem Bestandteile

Mehr

Inhaltsverzeichnis. Enterprise Java im Überblick. Technologien der Java2 Enterprise Edition

Inhaltsverzeichnis. Enterprise Java im Überblick. Technologien der Java2 Enterprise Edition Inhaltsverzeichnis Vorwort 13 I Enterprise Java im Überblick 1 Bedeutung von Enterprise Java und IBM WebSphere 21 1.1 Enterprise Java 23 1.1.1 Anforderungen 23 1.1.2 E-Business 30 1.1.3 Java 36 1.2 IBM

Mehr

www.uni-math.gwdg.de/linuxuebung

www.uni-math.gwdg.de/linuxuebung 14 Netzwerküberwachung und -steuerung Überblick SNMP Simple Network Management Protocol Datendefinitionen SNMP Implementierungen unter Linux Kommandos zur Datenbeschaffung Konfiguration des Net-SNMP Agenten

Mehr

Geschäftsprozessmodellierung essmodellierung mit BPEL

Geschäftsprozessmodellierung essmodellierung mit BPEL Geschäftsprozessmodellierung essmodellierung mit BPEL Autor: Stefan Berntheisel Datum: 8. Januar 2010 Stefan Berntheisel Hochschule RheinMain Fachseminar WS 09/10 Agenda Grundlagen Business Process Execution

Mehr

Inhaltsverzeichnis. Daniel Liebhart, Guido Schmutz, Marcel Lattmann, Markus Heinisch, Michael Könings, Mischa Kölliker, Perry Pakull, Peter Welkenbach

Inhaltsverzeichnis. Daniel Liebhart, Guido Schmutz, Marcel Lattmann, Markus Heinisch, Michael Könings, Mischa Kölliker, Perry Pakull, Peter Welkenbach sverzeichnis Daniel Liebhart, Guido Schmutz, Marcel Lattmann, Markus Heinisch, Michael Könings, Mischa Kölliker, Perry Pakull, Peter Welkenbach Integration Architecture Blueprint Leitfaden zur Konstruktion

Mehr

Business Process Management und Enterprise Service Bus

Business Process Management und Enterprise Service Bus Business Process Management und Enterprise Service Bus Gegner oder doch eine gute Ergänzung? Author: Date: Markus Demolsky Soreco International 08. November 2010 Vortragender Warum über Integration nachdenken?

Mehr

Web Services stellen eine Integrationsarchitektur dar, die die Kommunikation zwischen verschiedenen Anwendungen

Web Services stellen eine Integrationsarchitektur dar, die die Kommunikation zwischen verschiedenen Anwendungen 9 3 Web Services 3.1 Überblick Web Services stellen eine Integrationsarchitektur dar, die die Kommunikation zwischen verschiedenen Anwendungen mit Hilfe von XML über das Internet ermöglicht (siehe Abb.

Mehr

Integration mit Service Repositories zur SOA Governance

Integration mit Service Repositories zur SOA Governance Integration mit Service Repositories zur SOA Governance Nürnberg, 10.11.2009 I N H A L T 1. SOA Governance 2. Service Repository 3. Modelle und Service Repository 4. Modell-Driven SOA I N H A L T 1. SOA

Mehr

Implementierung von Web Services: Teil I: Einleitung / SOAP

Implementierung von Web Services: Teil I: Einleitung / SOAP Implementierung von Web Services: Teil I: Einleitung / SOAP Prof. Dr. Kanne - FSS 2007 Carl-Christian Kanne, February 25, 2007 Web Services - p. 1/12 Web Services: Allgemein XML Datenaustauschformat plattformunabhängig

Mehr

Web- und Gridservices zur Überwindung von Heterogenität. Bearbeiter: Lei Xia 16.07.2004

Web- und Gridservices zur Überwindung von Heterogenität. Bearbeiter: Lei Xia 16.07.2004 Web- und Gridservices zur Überwindung von Heterogenität Bearbeiter: Lei Xia 16.07.2004 Gliederung Einleitung Formen von Heterogenität Grundlagen Web Services als Schnittstelle zu DBMS Grid Data Services

Mehr

Business Process Execution Language. Christian Vollmer Oliver Garbe

Business Process Execution Language. Christian Vollmer <christian.vollmer@udo.edu> Oliver Garbe <oliver.garbe@udo.edu> Business Process Execution Language Christian Vollmer Oliver Garbe Aufbau Was ist BPEL? Wofür ist BPEL gut? Wie funktioniert BPEL? Wie sieht BPEL aus?

Mehr

Seminar Business Process Management und Workflow-Technologie: Grundlagen, Produkte, Forschung

Seminar Business Process Management und Workflow-Technologie: Grundlagen, Produkte, Forschung IBM WebSphere Process Server Seminar Business Process Management und Workflow-Technologie: Grundlagen, Produkte, Forschung AGENDA 1. Überblick 2. WebSphere Process Server 3. Komponenten 4. Präsentation

Mehr

Die Open Source SOA-Suite SOPERA

Die Open Source SOA-Suite SOPERA Architektur, Komponenten und Realisierung Jörg Gerlach Technische Universität Dresden Fakultät Informatik Institut für Angewandte Informatik Lehrstuhl Technische Informationssysteme 11. Juni 2009 Gliederung

Mehr

Vortrag im Rahmen des Arbeitskreis i Informatik an der Schule. Prof. Dr. Stefan Sarstedt 04.02.2009

Vortrag im Rahmen des Arbeitskreis i Informatik an der Schule. Prof. Dr. Stefan Sarstedt 04.02.2009 Service-orientierte Architekturen (SOA) Ein Einblick Vortrag im Rahmen des Arbeitskreis i Informatik an der Schule Prof. Dr. Stefan Sarstedt 04.02.2009 Programmieren heute und damals 2009 182910* *************************************TRACE

Mehr

Enterprise Application Integration Erfahrungen aus der Praxis

Enterprise Application Integration Erfahrungen aus der Praxis Enterprise Application Integration Erfahrungen aus der Praxis Teil 4: EAI und.net, EAI und J2EE Tutorial NODs 2002, Wolfgang Keller and Generali 2001, 2002, all rights reserved 1 Überblick EAI und....net

Mehr

Integration von Web Services in J EE Anwendungen mit XFire. 1/26 André Janus - Integration von Web Services in J EE Anwendungen mit XFire

Integration von Web Services in J EE Anwendungen mit XFire. 1/26 André Janus - Integration von Web Services in J EE Anwendungen mit XFire Integration von Web Services in J EE Anwendungen mit XFire 1/26 André Janus - Integration von Web Services in J EE Anwendungen mit XFire univativ : = Umsetzung durch Studenten und Young Professionals.

Mehr

Flexibilität im Prozess mit Oracle Business Rules 11g

Flexibilität im Prozess mit Oracle Business Rules 11g Flexibilität im Prozess mit Oracle Business Rules 11g Michael Stapf ORACLE Deutschland GmbH Frankfurt Schlüsselworte: Geschäftsregeln, Business Rules, Rules Engine, BPEL Process Manager, SOA Suite 11g,

Mehr

PROZESSE INTEGRIEREN leicht gemacht EFFIZIENTE PROZESSE

PROZESSE INTEGRIEREN leicht gemacht EFFIZIENTE PROZESSE PROZESSE INTEGRIEREN leicht gemacht DURCH TransConnect Geschäftsprozesse ableiten mit der Universal Worklist (UWL) Integrationsszenarien effektiver verwalten und transportieren Optimierte Personalverwaltung

Mehr

Java und XML/XML und Java. Mario Jeckle DaimlerChrysler Forschungszentrum Ulm mario.jeckle@daimlerchrysler.com mario@jeckle.de www.jeckle.

Java und XML/XML und Java. Mario Jeckle DaimlerChrysler Forschungszentrum Ulm mario.jeckle@daimlerchrysler.com mario@jeckle.de www.jeckle. Java und XML/XML und Java Mario Jeckle DaimlerChrysler Forschungszentrum Ulm mario.jeckle@daimlerchrysler.com mario@jeckle.de www.jeckle.de XML und Programmiersprachen... Java ist... Programmiersprache

Mehr

E-Business Architekturen

E-Business Architekturen E-Business Architekturen Übung 3b Entwicklung eigener Service-Angebote 01.03.2015 Prof. Dr. Andreas Schmietendorf 1 Ziele der Übung Möglichkeiten zur Serviceimplementierung (ggf. auch Cloud) Umgang mit

Mehr

Enterprise Application Integration. 8. Nachrichten-orientierte Middleware

Enterprise Application Integration. 8. Nachrichten-orientierte Middleware Enterprise Application Integration 8. Nachrichten-orientierte Middleware Kommunikation zwischen IS in Unternehmen eng Remote Procedure Calls/ Remote Method Invocation, z.b. bei: CORBA EJB DCOM+ Web Services

Mehr

Ein Beispiel. Ein Unternehmen will Internettechnologien im Rahmen des E- Business nutzen Welche Geschäftsprozesse?

Ein Beispiel. Ein Unternehmen will Internettechnologien im Rahmen des E- Business nutzen Welche Geschäftsprozesse? Ein Beispiel Ein Unternehmen will Internettechnologien im Rahmen des E- Business nutzen Welche Geschäftsprozesse? Dipl.-Kfm. Claus Häberle WS 2015 /16 # 42 XML (vereinfacht) visa

Mehr

CARL HANSER VERLAG. Dirk Ammelburger XML. Grundlagen der Sprache und Anwendungen in der Praxis 3-446-22562-5. www.hanser.de

CARL HANSER VERLAG. Dirk Ammelburger XML. Grundlagen der Sprache und Anwendungen in der Praxis 3-446-22562-5. www.hanser.de CARL HANSER VERLAG Dirk Ammelburger XML Grundlagen der Sprache und Anwendungen in der Praxis 3-446-22562-5 www.hanser.de 1 1.1 Einleitung... 2 Über dieses Buch... 3 1.2 Für wen ist das Buch gedacht?...

Mehr

5. Programmierschnittstellen für XML

5. Programmierschnittstellen für XML 5. Programmierschnittstellen für Grundlagen Dr. E. Schön FH Erfurt Sommersemester 2015 Seite 135 Programmierschnittstelle Notwendigkeit: Zugriff auf -Daten durch Applikationen wiederverwendbare Schnittstellen

Mehr

14. Fachtagung Mobilkommunikation Osnabrück

14. Fachtagung Mobilkommunikation Osnabrück SOA-basierte Peer-to-Peer-Mehrwertdienstebereitstellung 14. Fachtagung Mobilkommunikation Osnabrück 13. - 14. Mai 2009 Dipl.-Ing. Armin Lehmann, Prof. Dr.-Ing. Ulrich Trick Fachhochschule Frankfurt am

Mehr

Web Services: Inhalt

Web Services: Inhalt Web Services Fachseminar Verteilte Systeme 8. April 2002 - Marco Steiner Assistent: Thomas Schoch Professor: Dr. F. Mattern Web Services: Inhalt Bedeutung Gegenwart Architektur SOAP WSDL UDDI Vergleich

Mehr

ORACLE Business Components for Java (BC4J) Marco Grawunder

ORACLE Business Components for Java (BC4J) Marco Grawunder ORACLE Business Components for Java (BC4J) Marco Grawunder Gliederung 2 Probleme von J2EE/EJB J2EE-Pattern Lösungsansatz: BC4J Architektur einer BC4J-Anwendung Komponenten Entity Objects View Objects Application

Mehr

Proseminar: Website-Management-Systeme

Proseminar: Website-Management-Systeme Proseminar: Website-Management-Systeme Thema: Web: Apache/Roxen von Oliver Roeschke email: o_roesch@informatik.uni-kl.de Gliederung: 1.) kurze Einleitung 2.) Begriffsklärung 3.) Was ist ein Web? 4.) das

Mehr

Termin 4: Web Services Computing

Termin 4: Web Services Computing Arbeitsgruppe Übung Netzbasierte Informationssysteme Termin 4: Web Services Computing Prof. Dr. Adrian Paschke Arbeitsgruppe Corporate Semantic Web (AG-CSW) Institut für Informatik, Freie Universität Berlin

Mehr

OSS/J als Basis für Enterprise Application Integration

OSS/J als Basis für Enterprise Application Integration OSS/J als Basis für Enterprise Application Integration Geschäftsprozessgesteuerte EAI im Telekommunikationsbereich r A business of PwC Agenda OSS-Architekturen als Integrationsherausforderung OSS/J als

Mehr

Grundlagen des Grid Computing

Grundlagen des Grid Computing Grundlagen des Grid Computing Webservices und Grid Computing Globus Toolkit 4 - Grundlagen ICA Joh.. Kepler Universität t Linz Eine Typische Grid-Applikation (Beispiel) VO Management Service Resource Discovery

Mehr

Microsoft.NET und SunONE

Microsoft.NET und SunONE Microsoft.NET und SunONE, Plattformen und Application Service Providing Agenda Einordnung.NET und SunONE Kurzvorstellung Gegenüberstellung Zusammenfassung ASP (Application( Service Providing) ) und Ausblick

Mehr

5. Programmierschnittstellen für XML

5. Programmierschnittstellen für XML 5. Programmierschnittstellen für für Medientechnologen Dr. E. Schön Wintersemester 2015/16 Seite 146 Notwendigkeit: Programmierschnittstelle Zugriff auf -Daten durch Applikationen wiederverwendbare Schnittstellen

Mehr

Java Web Services mit Apache Axis2 Entwickler

Java Web Services mit Apache Axis2 Entwickler Thilo Frotscher, Dapeng Wang, Marc Teufel Java Web Services mit Apache Axis2 Entwickler Vorwort 15 1 Einleitung 25 1.1 Entstehung 26 1.2 Unterstützte Standards 28 1.3 Was beinhaltet Axis2? 29 1.4 Warum

Mehr

Error-Hospital für Oracle SOA Suite

Error-Hospital für Oracle SOA Suite Error-Hospital für Oracle SOA Suite Markus Lohn esentri AG Ettlingen Schlüsselworte Fusion Middleware, SOA, SOA Suite Einleitung Die Entwicklung von Services mit der SOA Suite erfolgt überwiegend deklarativ

Mehr

Dokumentation zur Verwendung eines SOAP-Webservices in SAP PI

Dokumentation zur Verwendung eines SOAP-Webservices in SAP PI Betriebswirtschaftliche Anwendungen 2: Serviceorientierte Anwendungsintegration Dokumentation zur Verwendung eines SOAP-Webservices in SAP PI Umrechnung von Währungen Steffen Dorn, Sebastian Peilicke,

Mehr

... Einleitung... 15. 3... Prozessintegration und Integrationsszenarien... 127 3.1... Integrationsszenariomodelle... 128

... Einleitung... 15. 3... Prozessintegration und Integrationsszenarien... 127 3.1... Integrationsszenariomodelle... 128 ... Einleitung... 15 1... Grundlagen der Modellierung von Enterprise Services... 23 1.1... Serviceorientierte Architekturen... 26 1.1.1... Merkmale serviceorientierter Architekturen... 27 1.1.2... SOA

Mehr

Peter Körner Adobe Systems Berlin, 3. Juni 2005

Peter Körner Adobe Systems Berlin, 3. Juni 2005 Interactive Forms based on Adobe Software: Überblick Peter Körner Adobe Systems Berlin, 3. Juni 2005 Einleitung Anwendungsszenarios Technologie Einleitung Anwendungsszenarios Technologie Anforderungen

Mehr

arlanis Software AG SOA Architektonische und technische Grundlagen Andreas Holubek

arlanis Software AG SOA Architektonische und technische Grundlagen Andreas Holubek arlanis Software AG SOA Architektonische und technische Grundlagen Andreas Holubek Speaker Andreas Holubek VP Engineering andreas.holubek@arlanis.com arlanis Software AG, D-14467 Potsdam 2009, arlanis

Mehr

Containerformat Spezifikation

Containerformat Spezifikation Containerformat Spezifikation Version 1.0-09.05.2011 Inhaltsverzeichnis 0 Einführung... 4 0.1 Referenzierte Dokumente... 4 0.2 Abkürzungen... 4 1 Containerformat... 5 1.1 Aufbau des Container-Headers...

Mehr

EAI - Enterprise Application Integration

EAI - Enterprise Application Integration EAI - Enterprise Application Integration Jutta Mülle WS 2005/2006 EAI - Folie 1 Überblick und Begriffsbildung Zusammenfassung und Ausblick hinweise EAI - Folie 2 Conclusion EAI Enterprise Application Integration

Mehr

JMS JAVA MESSAGE SERVICES. Entwicklung von Webanwendungen SS 07

JMS JAVA MESSAGE SERVICES. Entwicklung von Webanwendungen SS 07 JMS JAVA MESSAGE SERVICES Entwicklung von Webanwendungen SS 07 Marc Seeger Stephan Helten [ms155] [sh094] Agenda Teil 1: Marc Seeger [ms155] Einführung: Was ist Messaging Message Oriented Middleware [MOM]

Mehr

Architecture Blueprints

Architecture Blueprints Architecture Blueprints Daniel Liebhart, Peter Welkenbach, Perry Pakull, Mischa Kölliker, Michael Könings, Markus Heinisch, Guido Schmutz Ein Leitfaden zur Konstruktion von Softwaresystemen mit Java Spring,.NET,

Mehr

COMMON OBJECT REQUEST BROKER ARCHITECTURE. Dmytro Pyvovar Otto-von-Guericke Universität Magdeburg

COMMON OBJECT REQUEST BROKER ARCHITECTURE. Dmytro Pyvovar Otto-von-Guericke Universität Magdeburg COMMON OBJECT REQUEST BROKER ARCHITECTURE Dmytro Pyvovar Otto-von-Guericke Universität Magdeburg Gliederung Motivation Was ist CORBA? Object Management Architecture (OMA ) Interface Definition Language

Mehr

ARTS Server 3.5. Produktbeschreibung. Uptime Services AG

ARTS Server 3.5. Produktbeschreibung. Uptime Services AG Uptime Services AG Brauerstrasse 4 CH-8004 Zürich Tel. +41 44 560 76 00 Fax +41 44 560 76 01 www.uptime.ch ARTS Server 3.5 Produktbeschreibung Uptime Services AG Inhaltsverzeichnis 1 Einleitung... 2 2

Mehr

Kapitel WT:VI (Fortsetzung)

Kapitel WT:VI (Fortsetzung) Kapitel WT:VI (Fortsetzung) VI. Architekturen und Middleware-Technologien Client--Architekturen Ajax REST RPC, XML-RPC, Java RMI, DCOM Web-Services CORBA Message-oriented-Middleware MOM Enterprise Application

Mehr

SOAP Integrationstechnologie für verteilte Middlewarearchitekturen?

SOAP Integrationstechnologie für verteilte Middlewarearchitekturen? SOAP Integrationstechnologie für verteilte Middlewarearchitekturen? Großer Beleg Christian Wurbs Zwischenbericht http://www.inf.tu-dresden.de/~cw6 cw6@inf.tu-dresden.de Überblick 2 Aufgabenstellung CORBA

Mehr

Der Einsatz von CORBA in verteilten EDA-Tools

Der Einsatz von CORBA in verteilten EDA-Tools Der Einsatz von CORBA in verteilten EDA-Tools Frank Grützmacher Technische Universität Ilmenau Fakultät für Elektrotechnik und Informationstechnik Fachgebiet Mikroelektronische Schaltungen und Systeme

Mehr

Containerformat Spezifikation

Containerformat Spezifikation Containerformat Spezifikation Version 1.1-21.02.2014 Inhaltsverzeichnis 0 Einführung... 4 0.1 Referenzierte Dokumente... 4 0.2 Abkürzungen... 4 1 Containerformat... 5 1.1 Aufbau des Container-Headers...

Mehr

Oliver Olbrich Das ebxml Projekt Entstand 1999 in einer gemeinsamen Initiative von OASIS (Organisation for the Advancement of Structured Information Standards) und UN/CEAFACT (United Nations Center for

Mehr

Verteilte Systeme - 1. Übung

Verteilte Systeme - 1. Übung Verteilte Systeme - 1. Übung Dr. Jens Brandt Sommersemester 2011 1. Rechnerverbünde Kommunikationsverbund: Beispiele: E-Mail (SMTP, POP/IMAP), Instant Messaging (XMPP, IRC, ICQ,...), Newsgroups (NNTP)

Mehr

3.2 Der CORBA-Standard Common Object Request Broker Architecture

3.2 Der CORBA-Standard Common Object Request Broker Architecture 3.2 Der CORBA-Standard Common Object Request Broker Architecture (Bildquelle: OMG) Kapitel 3.2: Vorlesung CORBA 1 CORBA Middleware im Ueberblick G CORBA = Common Object Request Broker Architecture. Standard

Mehr

Alexandru Arion, Benjamin Schöllhorn, Ingo Reese, Jürgen Gebhard, Stefan Patsch, Stephan Frank

Alexandru Arion, Benjamin Schöllhorn, Ingo Reese, Jürgen Gebhard, Stefan Patsch, Stephan Frank Message Broker (MB) Alexandru Arion, Benjamin Schöllhorn, Ingo Reese, Jürgen Gebhard, Stefan Patsch, Stephan Frank Programmierung verteilter Systeme Lab Institut für Informatik Universität Augsburg Universitätsstraße

Mehr

Mainframe Internet Integration. Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth SS2013. WebSphere Application Server Teil 4

Mainframe Internet Integration. Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth SS2013. WebSphere Application Server Teil 4 UNIVERSITÄT LEIPZIG Mainframe Internet Integration Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth SS2013 WebSphere Application Server Teil 4 Leistungsverhalten el0100 copyright W. G. Spruth,

Mehr

Spring Dynamic Modules for OSGi Service Platforms

Spring Dynamic Modules for OSGi Service Platforms Gerd Wütherich freiberuflicher Softwarearchitekt Spring Dynamic Modules for OSGi Service Platforms Server Anwendungen mit Spring und Eclipse Equinox Agenda OSGi Technologie: OSGi Technologie im Überblick

Mehr

Hauptseminar Internetdienste Prof. F. Schweiggert Sommersemester 2004 Universität Ulm. Web Services. Boto Bako

Hauptseminar Internetdienste Prof. F. Schweiggert Sommersemester 2004 Universität Ulm. Web Services. Boto Bako Hauptseminar Internetdienste Prof. F. Schweiggert Sommersemester 2004 Universität Ulm Web Services Boto Bako Inhaltsverzeichnis 1.Einführung und Motivation...3 2.Verwendete Standards...4 2.1.SOAP...5 2.2.WSDL...6

Mehr

Kap. 6 Message-Oriented Middleware (MOM)

Kap. 6 Message-Oriented Middleware (MOM) Kap. 6 Message-Oriented Middleware (MOM) 6.1Asynchrone Prozedur- bzw. Methodenaufrufe Lose Kopplung von Komponenten 6.2Queued Transactions Entkopplung von Client/Server-Transaktionen 6.3Publish/Subscribe-Techniken

Mehr

Kap. 6 Message-Oriented Middleware (MOM)

Kap. 6 Message-Oriented Middleware (MOM) Kap. 6 Message-Oriented Middleware (MOM) G 6.1Asynchrone Prozedur- bzw. Methodenaufrufe Lose Kopplung von Komponenten G 6.2Queued Transactions Entkopplung von Client/Server-Transaktionen G 6.3Publish/Subscribe-Techniken

Mehr

Analyse von Sicherheitaspekten in Service-orientierten Architekturen

Analyse von Sicherheitaspekten in Service-orientierten Architekturen Analyse von Sicherheitaspekten in Service-orientierten Architekturen Vortragende: Jia Jia Betreuer: Dipl.-Inf. Matthias Lehmann Dresden,10.12.2009 10.12.2009 Analyse von Sicherheitaspekten in SOA 1 Gliederung

Mehr

Verteilte Systeme: Übung 4

Verteilte Systeme: Übung 4 Verteilte Systeme: Übung 4 WSDL und SOAP Oliver Kleine Institut für Telematik https://www.itm.uni-luebeck.de/people/kleine SOAP Nachrichten Serialisierung in XML Root-Element einer SOAP Nachricht ist

Mehr

Implementierung von Geschäftsprozessen in der Verwaltung mit Hilfe von SOA

Implementierung von Geschäftsprozessen in der Verwaltung mit Hilfe von SOA E-Gov Fokus Geschäftsprozesse und SOA 31. August 2007 Implementierung von Geschäftsprozessen in der Verwaltung mit Hilfe von SOA Im Vortrag werden die Vor- und Nachteile von Geschäftsprozessen in der öffentlichen

Mehr

Erfassung von Umgebungskontext und Kontextmanagement

Erfassung von Umgebungskontext und Kontextmanagement Erfassung von Umgebungskontext und Kontextmanagement Jörg Schneider, Christian Mannweiler, Andreas Klein, Hans D. Schotten 13.05.2009 Inhalt 1. Einleitung 2. Anforderungen 3. Kontext Erfassung und Verteilung

Mehr

VS3 Slide 1. Verteilte Systeme. Vorlesung 3 vom 22.04.2004 Dr. Sebastian Iwanowski FH Wedel

VS3 Slide 1. Verteilte Systeme. Vorlesung 3 vom 22.04.2004 Dr. Sebastian Iwanowski FH Wedel VS3 Slide 1 Verteilte Systeme Vorlesung 3 vom 22.04.2004 Dr. Sebastian Iwanowski FH Wedel Inhaltsverzeichnis für die Vorlesung Zur Motivation: 4 Beispiele aus der Praxis Allgemeine Anforderungen an Verteilte

Mehr

Fujitsu BeanConnect TM V3.0 Software 0 FUJITSU LIMITED 2013

Fujitsu BeanConnect TM V3.0 Software 0 FUJITSU LIMITED 2013 Fujitsu BeanConnect TM V3.0 Software 0 FUJITSU LIMITED 2013 Die Herausforderung: Hostanbindung Viele Unternehmen besitzen Mainframe- und Legacy-Anwendungen, so genannte Enterprise Information Systems (EIS),

Mehr

Fragment Identifiers, Template Handles

Fragment Identifiers, Template Handles Fragment Identifiers, Tibor Kálmán Gesellschaft für wissenschaftliche Datenverarbeitung mbh Göttingen (GWDG) Tibor [dot] Kalman [at] gwdg [dot] de 1 Übersicht Problematik der Referenzierung Technische

Mehr

Taktische Kommunikation auf Basis flexibler und dynamischer Informationsnetze

Taktische Kommunikation auf Basis flexibler und dynamischer Informationsnetze Frank Hornbach, Client Technical Advisor, Geschäftsbereich Verteidigung frank.hornbach@de.ibm.com Taktische Kommunikation auf Basis flexibler und dynamischer Informationsnetze AFCEA-ZVEI Fachveranstaltung

Mehr