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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Basistechnologien: Web-Services

Basistechnologien: Web-Services Alexander Rudolf Cloud-Computing Seminar Hochschule Mannheim WS0910 1/29 Basistechnologien: Web-Services Alexander Rudolf Hochschule Mannheim Fakultät für Informatik alexander.rudolf@stud.hs-mannheim.de

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

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

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

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

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

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

... 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

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

Oracle Business Process Analysis Suite. Gert Schüßler Principal Sales Consultant

<Insert Picture Here> Oracle Business Process Analysis Suite. Gert Schüßler Principal Sales Consultant Oracle Business Process Analysis Suite Gert Schüßler Principal Sales Consultant 1 Geschäftsprozesse Zerlegung am Beispiel Kreditvergabe Antrag aufnehmen Antrag erfassen Schufa Kunden

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

Web Service Entwicklung mit Java. Sven Lindow

Web Service Entwicklung mit Java. Sven Lindow Web Service Entwicklung mit Java Sven Lindow 22.11.2006 Agenda Einleitung SOAP, REST, WSDL, UDDI Web Services mit Java JWSDP JAX-RPC, JAX-WS 2.0 AXIS, AXIS2 Web Services nutzen Google, Ebay Web Services

Mehr

SOAP Simple Object Access Protocol

SOAP Simple Object Access Protocol Informatikseminar Tobias Briel Überblick 1. Einführung - was ist? 2. Middlewaretechnologie 3. Aufbau von Nachrichten 4. Vergleiche 5. Beispielanwendung 6. Zusammenfassung 1 Einführung was ist Soap? neue

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

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

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

Einführung in WebServices

Einführung in WebServices Einführung in WebServices Grundlagen und Praxis von WebServices Seminarleiterin: Dipl.-Ing. Mahbouba Gharbi Folie 1 / 34 Zielsetzung und Voraussetzungen Zielsetzung Nutzen von WebServices kennenlernen

Mehr

5. Übung zur Vorlesung Service-orientierte Architekturen

5. Übung zur Vorlesung Service-orientierte Architekturen 5. Übung zur Vorlesung Service-orientierte Architekturen Webservices und WSDL SoSe 2011 Anmerkung Hausaufgabe 03 BPMN Auch hier gilt: Layout! Zu Unterschieden zw. BPMN und eepk Relative Aussagen sind geschickter

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

Enterprise Java Beans Einführung

Enterprise Java Beans Einführung Enterprise Java Beans Einführung Vorlesung 8 Ralf Gitzel ralf_gitzel@hotmail.de 1 Themenübersicht Ralf Gitzel ralf_gitzel@hotmail.de 2 Übersicht EJBs im JEE Umfeld Verschiedene Typen von EJBs Von der Javaklasse

Mehr

Java Forum Stuttgart 2008

Java Forum Stuttgart 2008 Professionelle Open Source SOA in 45 Minuten! Java Forum Stuttgart 2008 Dr. Halil-Cem Gürsoy, CDI AG Der Referent Insgesamt ca. 10 Jahre Beratung, davor Forschung Senior Consultant - JEE Evangelist Hauptsächlich

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

Integrating Architecture Apps for the Enterprise

Integrating Architecture Apps for the Enterprise Integrating Architecture Apps for the Enterprise Ein einheitliches Modulsystem für verteilte Unternehmensanwendungen Motivation und Grundkonzept Inhalt Problem Ursache Herausforderung Grundgedanke Architektur

Mehr

JAXR Java API for XML Registries. Jasmin Hatteh

JAXR Java API for XML Registries. Jasmin Hatteh JAXR Java API for XML Registries Jasmin Hatteh Übersicht Web Service Architektur Rollenverteilung Interaktionen Business-Registry UDDI ebxml JAXR Architektur Interaktionen Pakete Was sind Web Services?

Mehr

Liste der Handbücher. Liste der Benutzerhandbücher von MEGA

Liste der Handbücher. Liste der Benutzerhandbücher von MEGA Liste der Handbücher Liste der Benutzerhandbücher von MEGA MEGA 2009 SP4 1. Ausgabe (Juni 2010) Die in diesem Dokument enthaltenen Informationen können jederzeit ohne vorherige Ankündigung geändert werden

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

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

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

CORBA-Konzept. Ziele. Common Object Request Broker Architecture CORBA. Plattformunabhängige Kommunikation Transparente Verteilung von Objekten

CORBA-Konzept. Ziele. Common Object Request Broker Architecture CORBA. Plattformunabhängige Kommunikation Transparente Verteilung von Objekten CORBA-Konzept Ziele Common Object Request Broker Architecture CORBA Plattformunabhängige Kommunikation Transparente Verteilung von Objekten CORBA-Konzept Object Management Group Spezifiziert den CORBA-Standard

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

Web Services T-Systems GS Darmstadt

Web Services T-Systems GS Darmstadt T-Systems GS Darmstadt Optional: Präsentationstitel Verfasser, Dr. A. Heck, Projekt, T-Systems weitere Angaben Datum, 23.10.2002, Seite Seite 1 1 Übersicht 1. Unternehmensdarstellung T-Systems 2. Definition

Mehr

Service-Orientierte Architekturen

Service-Orientierte Architekturen Hochschule Bonn-Rhein-Sieg Service-Orientierte Architekturen Kapitel 7: Web Services IV Exkurs über Sicherheitsanforderungen Vorlesung im Masterstudiengang Informatik Sommersemester 2010 Prof. Dr. Sascha

Mehr

17 Komponentenbasiertes Software-Engineering

17 Komponentenbasiertes Software-Engineering 17 Komponentenbasiertes Software-Engineering 17.0 Einführung Lernziele Grundlagen, Prinzipien und Probleme des CBSE 17.1 Komponenten und Komponentenmodelle Komponenten und ihre Eigenschaften Komponentenmodelle

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

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

Mit Open Source schrittweise zur SOA

Mit Open Source schrittweise zur SOA Mit Open Source schrittweise zur SOA Kristian Köhler koehler at oio.de Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim www.oio.de info@oio.de Wer steht vor Ihnen? 10+ Jahre Erfahrung in der

Mehr

Um asynchrone Aufrufe zwischen Browser und Web Anwendung zu ermöglichen, die Ajax Hilfsmittel DWR ist gebraucht.

Um asynchrone Aufrufe zwischen Browser und Web Anwendung zu ermöglichen, die Ajax Hilfsmittel DWR ist gebraucht. Technisches Design Inhalt Design Übersicht Menü und DispatcherServlet DWR Servlet Viewer Servlets Controllers Managers Sicherheit Anwendung Architektur Component Diagram Deployment Diagram Komponente Sequence

Mehr

Web Services mit Java

Web Services mit Java Web Services mit Java Neuentwicklung und Refactoring in der Praxis Torsten Langner new technology Markt+Technik Verlag Inhaltsverzeichnis Vorwort 13 Warum ausgerechnet dieses Buch? 13 An wen richtet sich

Mehr

Block Web-Dienste. Beispiel: ohne Browser. ohne Browser. Beispiel: Definition

Block Web-Dienste. Beispiel: ohne Browser. ohne Browser. Beispiel: Definition Block Web-Dienste Web-Dienste Klaus Schild, 2004 1 heutige Vorlesung Was sind Web-Dienste (Web Services)? diensteorientierte Architekturen Was ist SOAP, WSDL und UDDI? Entfernte Prozeduraufrufe (RPCs)

Mehr

Software Engineering II (IB) Serviceorientierte Architektur

Software Engineering II (IB) Serviceorientierte Architektur Serviceorientierte Architektur Prof. Dr. Oliver Braun Fakultät für Informatik und Mathematik Hochschule München SS 2015 Webservices Ziel: flexible programmatische Zusammenarbeit zwischen Servern Bereitstellung

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

Service Oriented Architecture. IM-Briefing 2008 4. Dezember 2008

Service Oriented Architecture. IM-Briefing 2008 4. Dezember 2008 Service Oriented Architecture IM-Briefing 2008 4. Dezember 2008 Agenda Begrüssung Was ist SOA Herkunft Player Modell Komponenten Zusammenfassung Diskussion Seite 1 Was ist SOA? Herkunft Der Begriff serviceorientierte

Mehr

Workflow Management: Workflow (1)

Workflow Management: Workflow (1) Workflow Management: Workflow (1) Abgrenzung: Geschäftsprozeß Vorgang (Aktivität) Arbeitsablauf (Workflow) Arbeitsschritt (Work Item) Otto-von-Guericke-Universität Magdeburg Fakultät für Informatik Institut

Mehr

POIS-Praktikum 2007. Prozessimplementierung, RosettaNet PIPs 3A

POIS-Praktikum 2007. Prozessimplementierung, RosettaNet PIPs 3A POIS-Praktikum 2007 Prozessimplementierung, RosettaNet PIPs 3A Manuel Blechschmidt, David Foerster, Michael Leben, Mike Nagora, Jonas Rogge, Paul Römer Gliederung 2 Einleitung Was war unsere Aufgabe? Was

Mehr

Middleware. Host. Versuch einer Einleitung. dumme Terminals stellen Ausgaben dar und nehmen Eingaben an

Middleware. Host. Versuch einer Einleitung. dumme Terminals stellen Ausgaben dar und nehmen Eingaben an Middleware Versuch einer Einleitung Host dumme Terminals stellen Ausgaben dar und nehmen Eingaben an Mainframe enthält vollständige Anwendung Typ. COBOL, C Mainframe contd.! Nachteile! Mainframe ist teuer

Mehr

SOA mit.net: Vom Geschäftsprozess zur Lösung

SOA mit.net: Vom Geschäftsprozess zur Lösung SOA mit.net: Vom Geschäftsprozess zur Lösung Manfred Steyer Aktuelles Buch.Net 4.0 Update ISBN 978-3866454439 http://tinyurl.com/net4update 1 Kontakt [www] www.softwarearchitekt.at [mail] Manfred.Steyer@SoftwareArchitekt.at

Mehr

InQMy Application Server Flexible Softwareinfrastruktur für verteilte Anwendungen

InQMy Application Server Flexible Softwareinfrastruktur für verteilte Anwendungen InQMy Application Server Flexible Softwareinfrastruktur für verteilte Anwendungen IN-Q-My Title Company (Name) / 1 Agenda Firmenübersicht ebusiness Evolution InQMy Application Server Architektur Zusammenfassung

Mehr

XMPP: Extensible Messaging and Presence Protocol

XMPP: Extensible Messaging and Presence Protocol XMPP: Extensible Messaging and Presence Protocol (aka Jabber) 5. Dezember 2005 Einleitung Was ist XMPP? Architektur Allgemeines Kommunikation via XMPP: Streams, Stanzas Beispielanwendung

Mehr

Etablierung serviceorientierter Architekturen mit Web Services

Etablierung serviceorientierter Architekturen mit Web Services Etablierung serviceorientierter Architekturen mit Web Services Vorlesung im (Entwicklung von Serviceangeboten) 1 Agenda Einsatzbereiche von Web Service basierten Angeboten Übersicht zur Java-System Application

Mehr

Service-Orientierte Architekturen

Service-Orientierte Architekturen Hochschule Bonn-Rhein-Sieg Service-Orientierte Architekturen Kapitel 2: Einführung in Service-Orientierte Architekturen Vorlesung im Masterstudiengang Informatik Sommersemester 2010 Prof. Dr. Sascha Alda

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

Hauptseminar Management von Softwaresystemen. Techniken der System-Integration EAI, Middleware, SOA, CORBA

Hauptseminar Management von Softwaresystemen. Techniken der System-Integration EAI, Middleware, SOA, CORBA Hauptseminar Management von Softwaresystemen Techniken der System-Integration EAI, Middleware, SOA, CORBA Betreuerin: Referent: Ulrike Hammerschall Alexey Krivoborodov Agenda Motivation Arten der Verteilung

Mehr

Technische Universität München. SAML/Shibboleth. Ein Vortrag von Florian Mutter

Technische Universität München. SAML/Shibboleth. Ein Vortrag von Florian Mutter SAML/Shibboleth Ein Vortrag von Florian Mutter Security Assertion Markup Language XML-basierter Standard für den Austausch von Authentifizierungs-, Attributs- Berechtigungsinformationen Seit 2001 von OASIS

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

SOA Strategiebaukasten

SOA Strategiebaukasten SOA Strategiebaukasten Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim www.oio.de info@oio.de Inhalt Hintergrund, Strategie und Vision Topologie Governance Enterprise Metadata und Service

Mehr

Systembeschreibung. Masterplan Kommunikationsinterface. ASEKO GmbH. Version 1.0 Status: Final

Systembeschreibung. Masterplan Kommunikationsinterface. ASEKO GmbH. Version 1.0 Status: Final Systembeschreibung Masterplan Kommunikationsinterface ASEKO GmbH Version 1.0 Status: Final 0 Inhaltsverzeichnis 1 Einleitung... 2 2 Architektur... 2 2.1 Anbindung an die MKI Lösung... 2 2.2 Inbound Kommunikationsmethoden...

Mehr

Services Computing und SOA

Services Computing und SOA Services Computing und SOA GeneriCo Best-Practices und Design-Guidelines in Form der sog. SOA-Blueprints Martin Pellengahr Agenda A. Übersicht über die SOA-Blueprints-Initiative B. GeneriCo-Spezifikation

Mehr

Musterlösung Übungsblatt 1 Netzprogrammierung WS 05/06

Musterlösung Übungsblatt 1 Netzprogrammierung WS 05/06 Musterlösung Übungsblatt 1 Netzprogrammierung WS 05/06 Block Verteilte Systeme und Middleware 1. Beschreiben Sie die Entwicklung verteilter Systeme von einer Zentralisierung bis zu Peer-to-Peer. Nicht

Mehr

VS12 Slide 1. Verteilte Systeme. Vorlesung 12 Sebastian Iwanowski FH Wedel

VS12 Slide 1. Verteilte Systeme. Vorlesung 12 Sebastian Iwanowski FH Wedel VS12 Slide 1 Verteilte Systeme Vorlesung 12 Sebastian Iwanowski FH Wedel Mögliche Plattformen für Web Services VS12 Slide 2 VS12 Slide 3 Java-Software für verteilte Systeme J2EE: Java 2 Enterprise Edition

Mehr

Sun ONE. Sun Open Net Environment. Architektur für Web-Services on Demand. Dr. Rainer Eschrich rainer.eschrich@sun.com

Sun ONE. Sun Open Net Environment. Architektur für Web-Services on Demand. Dr. Rainer Eschrich rainer.eschrich@sun.com Sun ONE Sun Open Net Environment Dr. Rainer Eschrich rainer.eschrich@sun.com Architektur für Web-Services on Demand Sun ONE Vision Wie kann Software dem Kunden helfen? Kostenreduktion: Wie? In dem man

Mehr

Appliances Phones & Tablets PC SaaS Cloud app Queues Topics Relays Notifications LOB Apps Team SharePoint Event Aggregator site.... Queues (Warteschlangen) Topics (Themen) Subscriptions (Abonnements)

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

J2EEKurs. J2EE eine Plattform für betriebliche Anwendungen. Peter Thiemann. Sommercampus J2EEKurs, Freiburg, Germany, 10.-14.10.

J2EEKurs. J2EE eine Plattform für betriebliche Anwendungen. Peter Thiemann. Sommercampus J2EEKurs, Freiburg, Germany, 10.-14.10. J2EE eine Plattform für betriebliche Anwendungen Universität Freiburg, Germany Sommercampus, Freiburg, Germany, 10.-14.10.2005 Plattform Betriebliche Anwendung J2EE Kontrahenten J2EE im Überblick Was ist

Mehr

Das Interceptor Muster

Das Interceptor Muster Das Interceptor Muster Implementierung des Interceptor Musters basierend auf OSGi and Friends Benjamin Friedrich Hochschule für Technik und Wirtschaft des Saarlandes Praktische Informatik - Entwurfsmuster

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

Oracle 10g und SQL Server 2005 ein Vergleich. Thomas Wächtler 39221

Oracle 10g und SQL Server 2005 ein Vergleich. Thomas Wächtler 39221 Oracle 10g und SQL Server 2005 ein Vergleich Thomas Wächtler 39221 Inhalt 1. Einführung 2. Architektur SQL Server 2005 1. SQLOS 2. Relational Engine 3. Protocol Layer 3. Services 1. Replication 2. Reporting

Mehr

Organisation und Systeme SOA: Erstellung von Templates für WebService Consumer und Provider in Java

Organisation und Systeme SOA: Erstellung von Templates für WebService Consumer und Provider in Java SOA: Erstellung von Templates für WebService Consumer und Provider in Java Entwicklung von Java WebService Provider- und Consumer-Bibliotheken zur Standardisierung der Karmann WebService Landschaft. Konzeption

Mehr

VS11 Slide 1. Verteilte Systeme. Vorlesung 11 Sebastian Iwanowski FH Wedel

VS11 Slide 1. Verteilte Systeme. Vorlesung 11 Sebastian Iwanowski FH Wedel VS11 Slide 1 Verteilte Systeme Vorlesung 11 Sebastian Iwanowski FH Wedel VS11 Slide 2 Verteilte Systeme 1. Innovative Beispiele aus der Praxis 2. Allgemeine Anforderungen und Techniken verteilter Systeme

Mehr

Architektur von SOAP basierten Web Services

Architektur von SOAP basierten Web Services Architektur von SOAP basierten Web Services André Homeyer 28.11.2005 Worst-Case einer verteilten Anwendung TravelTime Client Benutzerinterface WackyWing Server Flüge suchen TravelTime Server Flüge suchen

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

Einsatz von Applikationsservern. Untersucht am Beispiel des Sybase Enterprise Application Server

Einsatz von Applikationsservern. Untersucht am Beispiel des Sybase Enterprise Application Server Einsatz von Applikationsservern Untersucht am Beispiel des Sybase Enterprise Application Server Architektur von Datenbanksystemen Client / Server Modell (2 Schichten Modell) Benutzerschnittstelle Präsentationslogik

Mehr

Diplomarbeit von Lars Gohlke. University of Applied Sciences Brandenburg

Diplomarbeit von Lars Gohlke. University of Applied Sciences Brandenburg Diplomarbeit von Lars Gohlke University of Applied Sciences Brandenburg Inhalt Motivation Skype SOA in 5 Schritten Anwendung + Demo Seite 2 Motivation Kommunikation einfach - schnell preiswert - verläßlich

Mehr

Erfahrungsbericht zu JBoss SOA Platform 6 Tech Talk 2013, 17. Oktober 2013, Bern

Erfahrungsbericht zu JBoss SOA Platform 6 Tech Talk 2013, 17. Oktober 2013, Bern Erfahrungsbericht zu JBoss SOA Platform 6 Tech Talk 2013, 17. Oktober 2013, Bern Daniel Tschan Technischer Leiter Michael Zaugg Software-Ingenieur Motivation Puzzle Through 2016, companies will continue

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

Inhaltsverzeichnis. Vorwort 13. Kapitel 1 Einleitung 17. Kapitel 2 Architekturen 51. Kapitel 3 Prozesse 91

Inhaltsverzeichnis. Vorwort 13. Kapitel 1 Einleitung 17. Kapitel 2 Architekturen 51. Kapitel 3 Prozesse 91 Inhaltsverzeichnis Vorwort 13 Kapitel 1 Einleitung 17 1.1 Definition eines verteilten Systems................................ 19 1.2 Ziele........................................................ 20 1.2.1

Mehr

Modul Software Komponenten 10 Komponentenarchitektur

Modul Software Komponenten 10 Komponentenarchitektur Modul Software Komponenten 10 Komponentenarchitektur Teil 3 Peter Sollberger Eine erste CORBA Anwendung Inhalt Dienstag, 4. November Object Request Broker CORBA Architektur und Komponenten (Teil 1) Übung:

Mehr

Vortrag ESB. von Ahmadreza Ibrahimzadeh

Vortrag ESB. von Ahmadreza Ibrahimzadeh Vortrag ESB von Ahmadreza Ibrahimzadeh 20.05.2010 Inhaltsverzeichnis 1. Einleitung...3 2. Enterprise Service Bus (ESB)...3 2.1 Produkte...3 2.2 JBOSS-ESB, Riftsaw...3 3. ESB-Eigenschaften...4 3.1 Service

Mehr