Seifenfrei Interoperabilität von Java und.net ohne SOAP

Größe: px
Ab Seite anzeigen:

Download "Seifenfrei Interoperabilität von Java und.net ohne SOAP"

Transkript

1 Seifenfrei Interoperabilität von Java und.net ohne SOAP Thomas Haug Seifenfrei Thomas Haug Copyright 2009 MATHEMA Software GmbH 1

2 Seifenfrei - Agenda Motivation Entscheidungskritierien Technische Anforderungen Begriffsklärung Unzulänglichkeiten in Web Services Alternativen zu Web-Services Zusammenfassung 2

3 Seifenfrei - Agenda Motivation Entscheidungskritierien Technische Anforderungen Begriffsklärung Unzulänglichkeiten in Web Services Alternativen zu Web-Services Zusammenfassung 3

4 Seifenfrei - Motivation Beispiel Szenario An eine Java Server Anwendung (JEE) sind zwei Typen von Clients angebunden Administrative, interaktive Clients Wenige Hohe Anforderungen an Antwortzeiten Viewing Clients Sehr viele die nach dem Publisher-Subscriber Muster arbeiten 4

5 Seifenfrei - Motivation Beispiel Szenario (Fortsetzung) A u fgr u n d ein er geän d er t en U n t er n eh m en sst r at egie so llen d ie C lien t s au f n at ive W in d o w s C lien t s (.N et ) u m gest ellt w er d en Mit welcher Technologie soll die Anbindung stattfinden? Natürlich mit Goldener Hammer! Das ist doch State-of-the-Art! 5

6 Seifenfrei - Motivation Mit welcher Technologie soll die Anbindung stattfinden? Natürlich mit Goldener Hammer! Das ist doch State-of-the-Art! Eindimensionale Betrachtung Aber nicht-funktionale Anforderungen müssen betrachtet werden Hohe Anforderungen an Antwortzeiten?? Sehr viele Clients?? Publisher-Subscriber Muster?? 6

7 Seifenfrei - Agenda Motivation Entscheidungskritierien Technische Anforderungen Begriffsklärung Unzulänglichkeiten in Web Services Alternativen zu Web-Services Zusammenfassung 7

8 Seifenfrei Entscheidungskriterien 1/2 Technologischer Hype Unternehmerische Vision Vorkenntnisse der Entwickler und Architekten Unkenntnis von Alternativen Einflussfaktoren Politischer Druck Strategische Partnerschaften Unternehmerische Anforderungen Technologische Anforderungen Fachliche Anforderungen 8

9 Seifenfrei Entscheidungskriterien 2/2 Technologischer Hype Unternehmerische Vision Vorkenntnisse der Entwickler und Architekten Unkenntnis von Alternativen Einflussfaktoren Politischer Druck Strategische Partnerschaften Unternehmerische Anforderungen Technologische Anforderungen Fachliche Anforderungen 9

10 Seifenfrei Technische Anforderungen (1/2) Kommunikationsmuster Synchrone und/oder asynchrone Kommunikation Welche Querschnitts-Dienste sind erforderlich Namensdienste / Registries Abhängig von Anzahl entfernter Objekte / Dienste Sicherheit (Netzwerk und Nachricht) Transaktionen Garantierte Zustellung (Reliability) 10

11 Seifenfrei Technische Anforderungen (2/2) Was sind die Performance Ansprüche Durchsatz Footprint CPU Verbrauch Nachrichten Größe Firewall Verträglichkeit Programmiermodell Stichwort Instance Management Integrierte Verfügbarkeitslösungen 11

12 Seifenfrei - Agenda Motivation Entscheidungskritierien Technische Anforderungen Begriffsklärung Unzulänglichkeiten in Web Services Alternativen zu Web-Services Zusammenfassung 12

13 Seifenfrei - Begriffsklärung RPC-basierte Kommunikation i.a. synchrone Aufrufe Direkte 1-zu-1 Kommunikation Aufrufer kann erst fortfahren, wenn Ergebnis des Aufrufs bekannt ist Einfaches Kommunikationsmuster Enge Kopplung Beispiele CORBA, JAVA RMI, DCOM, WCF,.Net Remoting, Web Services 13

14 Seifenfrei - Begriffsklärung Nachrichten-basierte Kommunikation i.a. asynchrone Aufrufe Indirekte 1-zu-1 und 1-zu-N Kommunikation Aufrufer initiiert Aufruf, kann aber mit Verarbeitung fortfahren Lose Kopplung Garantierte Auslieferung als zusätzlicher Quality-of-Service (QoS) Aspekt möglich Kommunikationspfad können schwer nachvollziehbar sein Beispiele CORBA Event / Notification, JAVA JMS, MS MQ, WCF 14

15 Seifenfrei - Agenda Motivation Entscheidungskritierien Technische Anforderungen Begriffsklärung Unzulänglichkeiten in Web Services Alternativen zu Web-Services Zusammenfassung 15

16 Seifenfrei WS Unzulänglichkeiten (1/6) Bei der Integration einer.net Anwendung mit einer Java Anwendung würde man spontan auf eine Web Service Lösung setzen Aber Insbesondere unterstützt.net Remoting und Window Communication Foundation (WCF) ausschließlich SOAP als interoperable Nachrichten-Kodierung SOAP und WS sind lediglich eine Sammlung von Spezifikationen Es gibt kein einheitliches Programmiermodell.Net Remoting und WCF in.net haben unterschiedliche Modelle In Java existiert eine Flut unterschiedlicher SOAP Toolkits 16

17 Seifenfrei WS Unzulänglichkeiten (2/6) Ist lediglich eine Sammlung von Spezifikationen (Fortsetzung) Interoperabilität ist nicht zwangsläufig gegeben SOAP Nachrichten Missverhältnis zwischen Struktur- und Nutzinformation XML muss erzeugt werden Kann Performance und Footprint Probleme verursachen WS Notification hat keine große Verbreitung Schnittstellen Beschreibung per WSDL ist schwierig / komplex 17

18 Seifenfrei WS Unzulänglichkeiten (3/6) WSDL Beispiel (1/3) <wsdl:definitions targetnamespace="http://soapperftest.mathema.de" xmlns:ns2="http://soapperftest.mathema.de/types" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:mathema="http://soapperftest.mathema.de" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/"> <wsdl:types> <xs:schema attributeformdefault="unqualified" elementformdefault="unqualified" targetnamespace="http://soapperftest.mathema.de/types" xmlns:types="http://soapperftest.mathema.de/types" xmlns:xs="http://www.w3.org/2001/xmlschema"> <xs:complextype abstract="true" name="component"> <xs:sequence> <xs:element maxoccurs="1" minoccurs="1" name="value" nillable="true" type="xs:anytype"/> </xs:sequence> </xs:complextype> <xs:complextype name="composite"> <xs:complexcontent> <xs:extension base="ns2:component"> <xs:sequence> <xs:element maxoccurs="unbounded" minoccurs="0" name="children" nillable="true" type="ns2:component"/> </xs:sequence> </xs:extension> </xs:complexcontent> </xs:complextype> 18

19 Seifenfrei WS Unzulänglichkeiten (4/6) WSDL Beispiel (2/3) <xs:complextype name="integerleaf"> <xs:complexcontent> <xs:restriction base="ns2:component"> <xs:sequence> <xs:element maxoccurs="1" minoccurs="1" name="value" nillable="true" type="xs:int"/> </xs:sequence> </xs:restriction> </xs:complexcontent> </xs:complextype> <xs:element name="echo"> <xs:complextype> <xs:sequence> <xs:element name="input" type="ns2:component"/> </xs:sequence> </xs:complextype> </xs:element> <xs:element name="echoresponse"> <xs:complextype> <xs:sequence> <xs:element name="return" type="ns2:component"/> </xs:sequence> </xs:complextype> </xs:element> </xs:schema> </wsdl:types> 19

20 Seifenfrei WS Unzulänglichkeiten (5/6) WSDL Beispiel (3/3) <wsdl:porttype name="soapperftestporttype"> <wsdl:operation name="echo"> <wsdl:input message="mathema:echomessage"/> <wsdl:output message="mathema:echoresponsemessage"/> </wsdl:operation> </wsdl:porttype> <wsdl:binding name="soapperftestsoap11binding" type="mathema:soapperftestporttype"> <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/> <wsdl:operation name="echo"> <soap:operation soapaction="urn:echo" style="document"/> <wsdl:input> <soap:body use="literal" namespace="http://soapperftest.mathema.de"/> </wsdl:input> <wsdl:output> <soap:body use="literal" namespace="http://soapperftest.mathema.de"/> </wsdl:output> </wsdl:operation> </wsdl:binding> <wsdl:service name="soapperftest"> <wsdl:port name="soapperftestsoap11port" binding="mathema:soapperftestsoap11binding"> <soap:address location="http:// :8080/axis2/services/soapperftest"/> </wsdl:port> </wsdl:service> </wsdl:definitions> 20

21 Seifenfrei WS Unzulänglichkeiten (6/6) Der SOAP Stack wird im Allgemeinen als ein peinlicher Fehlschlag eingestuft Tim Bray ( Co-Erfinder von XML) 21

22 Seifenfrei - Agenda Motivation Entscheidungskritierien Technische Anforderungen Begriffsklärung Unzulänglichkeiten in Web Services Alternativen zu Web-Services Zusammenfassung 22

23 Seifenfrei Alternativen 23

24 Seifenfrei Es gibt viele Alternativen RPC basierte Varianten IIOP.Net Hessian [Internet Communication Environment (Ice)] Event/Messaging basierte Varianten ActiveMQ mit NMS IceStrom [IIOP.Net] 24

25 Seifenfrei Es gibt viele Alternativen RPC basierte Varianten IIOP.Net Hessian [Internet Communication Environment (Ice)] Event/Messaging basierte Varianten ActiveMQ mit NMS IceStrom [IIOP.Net] 25

26 Seifenfrei IIOP.Net (1/9) Open Source Framework für.net LGPL Lizenz Model In C# implementiert Aktuelle Version 1.9 SP1 (Oktober 2008) Basiert auf CORBA 2.3 Bidirectional IIOP Value Types Portable Interceptors IIOP/SSL über ein Plugin 26

27 Seifenfrei IIOP.Net (2/9) IIOP Integration über das.net Remoting Framework Client.Net Anwendung Proxy Service Schnittstelle CORBA Server ServiceImpl Servant IiopFormatter POA IiopChannel IIOP Nachricht ORB 27

28 Seifenfrei IIOP.Net (2/9) IIOP Integration über das.net Remoting Framework Client.Net Anwendung Proxy Service Schnittstelle JEE Server EJB Impl EJB Wrapper IiopFormatter? POA? IiopChannel IIOP Nachricht ORB 28

29 Seifenfrei IIOP.Net (3/9) Schnittstellen Beschreibung über OMG IDL Mittels IDLToCLS.Net Assembly erzeugen Mittels CLSToIDL aus Assembly IDL erzeugen 29

30 Seifenfrei IIOP.Net (4/9) Beispiel IDL 1: module ohneseife { 2: interface DemoService { 3: long meininttest(in long wert); string meinstringtest(in string zeichenkette); Komponent echo(in Komponent komponent); }; 4: #pragma ID DemoService "IDL:ohneSeife/DemoService:1.0" 5: }; 30

31 Seifenfrei IIOP.Net (5/9) Generierte.Net Assembly aus Beispiel 31

32 Seifenfrei IIOP.Net (6/9) Beispiel C# Client 1: string ior = "IOR: "; 2: IiopClientChannel channel = new IiopClientChannel(); 3: ChannelServices.RegisterChannel(channel,false); 4: DemoService demoservice = (DemoService) RemotingServices.Connect(typeof(DemoService), ior); 5: demoservice.meinstringtest("hallo, ein.net Client"); Zugriff auf COS Name Service ist möglich 32

33 Seifenfrei IIOP.Net (7/9) Server Objekte in IIOP.Net sind reguläre.net Remoting Objekte 1: class DemoServiceImpl : MarshalByRefObject, DemoService { 2: public string meinstringtest(string zeichenkette) { 3: Console.WriteLine("Empfangen {0}", zeichenkette); 4: return "OK"; 5: } Beispiel Server 1: int port = 8087; 2: IiopChannel chan = new IiopChannel(port); 3: ChannelServices.RegisterChannel(chan); 4: DemoServerImpl server = new DemoServerImpl(); 5: string objecturi = "demoserver"; 6: RemotingServices.Marshal(server, objecturi) 33

34 Seifenfrei IIOP.Net (8/9) Beispiel RMIOverIIOP 1: IiopClientChannel channel = new IiopClientChannel(); 2: ChannelServices.RegisterChannel(channel); 3: RmiIiopInit init = new RmiIiopInit(nameServiceHost, nameserviceport); 4: NamingContext nameservice = init.getnameservice(); NameComponent[] name = new NameComponent[] { new NameComponent("ch.elca.iiop.demo.ejbAdder.AdderHome", "") }; 5: AdderHome adderhome = (AdderHome)nameService.resolve(name); 6: Adder adder = adderhome.create(); 7: double result = adder.add(sum1, sum2); 34

35 Seifenfrei IIOP.Net (9/9) Integrationsaufwand Leichte Integration in existierende CORBA Landschaft möglich Nicht nur auf Java beschränkt Bettet sich nahezu nahtlos in das.net Remoting Framework ein Unterstützung von COS Naming ist vorhanden Nutzung bestehender CORBA Services wie COS Transaction und COS Notification ist möglich, aber mit Entwicklungsaufwand verbunden. Schlecht geeignet für Szenarien, in denen Firewalls durchdrungen werden müssen 35

36 Seifenfrei Es gibt viele Alternativen RPC basierte Varianten IIOP.Net Hessian [Internet Communication Environment (Ice)] Event/Messaging basierte Varianten ActiveMQ mit NMS IceStrom [IIOP.Net] 36

37 Seifenfrei Hessian (1/8) Binäres Web Service Protokoll für RPC Spezifikation von Caucho Binär-codiert Nachrichten Transportprotokoll HTTP RPC basierte Kommunikation Implementierungen u. a. für Java (http://hessian.caucho.com/, 3.2 oder Alternative Hessian4J 1.0).Net (C#) (http://www.hessiancsharp.org/, 1.3.3, LGPL) Keine explizite Schnittstellen Beschreibungssprache 37

38 Seifenfrei Hessian (2/8) Hessian C# Client und Tomcat-basierter Hessian Service Client.Net Anwendung CHessianProxyStandardImpl Service Schnittstelle Tomcat ServletImpl Host & Context CHessianMethodCaller Engine Catalina Hessian IO System Hessian Nachricht Service Catalina & HTTP Connector 38

39 Seifenfrei Hessian (3/8) Programmierer müssen Datentypen der Programmiersprache auf Hessian Datentypen kennen Basist yp en Hessian Java.Net Typ (C#) boolean boolean bool 32-bit int int int 64-bit long long long 64-bit double double double 64-bit date java.util.date DateTime UTF8-encoded string String string remote objects 39

40 Seifenfrei Hessian (4/8) Programmierer müssen Datentypen der Programmiersprache auf Hessian Datentypen kennen (Fortsetzung) Container Hessian Java.Net Typ (C#) list List IList map Map IDictionary Spezialkonstrukte Hessian Java.Net Typ (C#) null null null ref Kennzeichnet Referenzen 40

41 Seifenfrei Hessian (5/8) Beispiel Schnittstelle in C# und Java 1: namespace HessianClient { 2: interface IdemoService { 3: int meininttest(int wert); string meinstringtest(string zeichenkette); Komponent echo(komponent component); 4: } 5: } 1: package service; 2: public interface DemoService { 3: int meininttest(int wert); String meinstringtest(string zeichenkette); Komponent echo(komponent component); 4: } 41

42 Seifenfrei Hessian (6/8) Beispiel C# Client 1: string url = "http://"+host+":8080/hessian/demoservice"; 2: CHessianProxyFactory factory = new CHessianProxyFactory(); 3: IDemoService demoservice = (IDemoService)factory.Create(typeof(IDemoService), url); 4: demoservice.meinstringtest("hallo, ein.net Client"); 42

43 Seifenfrei Hessian (7/8) Beispiel Java Server in Web Container (z. B. Tomcat / Jetty) 1: public class DemoServiceImpl extends HessianServlet implements DemoService { 2: public int meininttest(int wert) { System.out.println("Integer '"+wert+"' empfangen."); return wert++; } 3: public String meinstringtest(string zeichenkette) { System.out.println("String '"+zeichenkette +"' empfangen."); return "Hallo Client, server hat '"+zeichenkette +"' von Ihnen empfangen"; } 4: } 43

44 Seifenfrei Hessian (8/8) Vor- und Nachteile Integrationsaufwand Einfaches Programmiermodell Integration in Java Web Container Eignet sich für Szenarien, in denen Firewalls durchdrungen werden müssen Sicherheit über HTTPS Lastverteilung lässt sich mit mäßigem Aufwand realisieren Kein einheitliches (Server-seitiges) Programmiermodell Keine Unterstützung für Namensdienste/Registries, Transaktionen und Reliable Messaging 44

45 Seifenfrei Es gibt viele Alternativen RPC basierte Varianten IIOP.Net Hessian [Internet Communication Environment (Ice)] Event/Messaging basierte Varianten ActiveMQ mit NMS IceStrom [IIOP.Net] 45

46 Seifenfrei ActiveMQ und NMS (1/8) Apache Projekt ActiveMQ bietet Nachrichten-basierte Kommunikation auf Basis der JMS Spezifikation Ist grundsätzlich asynchron Bietet Qualitätsaspekte wie Transaktionsanbindung Persistente Queues Garantierte Auslieferung Ortstransparenz Transport über TCP 46

47 Seifenfrei ActiveMQ und NMS (2/8) ActiveMQ NMS.Net Messaging API Unterstützt sog Cross Lanaguage Clients and Protocols OpenWire STOMP Streaming Text Oriented Messaging Protocol Unterstützt ActiveMQ und MSMQ Ist integraler Bestandteil von Spring.Net Unterstüzte Nachrichten: ITextMessage, IMapMessage IBytesMessage 47

48 Seifenfrei ActiveMQ und NMS (3/8) Point-to-Point Asynchrone Kommunikation zwischen genau zwei Partnern Sind mehrere Empfänger registriert, erhält genau einer die Nachricht Sender JMS Queue Empfänger JMS Broker 48

49 Seifenfrei ActiveMQ und NMS (4/8) Publisher-Subscriber Asynchrone Kommunikation zwischen einem Sender und mehreren Empfängern Empfänger 1 Sender JMS Topic JMS Broker. Empfänger n 49

50 Seifenfrei ActiveMQ und NMS (5/8) Beispiel Java Publisher Beispiel 1: ConnectionFactory factory = new ActiveMQConnectionFactory("tcp://localhost:61616"); Connection connection = factory.createconnection(); 2: Session jmssession = connection.createsession(false, Session.AUTO_ACKNOWLEDGE); Topic topic = jmssession.createtopic("demotopic"); 3: MessageProducer producer = jmssession.createproducer(topic); producer.setdeliverymode(deliverymode.non_persistent); 4: jmssession.createtextmessage("hallo eine Nachricht"); producer.send(message); 50

51 Seifenfrei ActiveMQ und NMS (6/8) Beispiel C# Subscriber Beispiel (1/2) 1: using Apache.NMS.ActiveMQ; using Apache.NMS; namespace NMSSubscriber { class Subscriber { static void Main(string[] args) { 2: ConnectionFactory factory = new ConnectionFactory("tcp://localhost:61616"); IConnection connection = factory.createconnection(); 3: ISession jmssession = connection.createsession(acknowledgementmode.autoacknowledge); ITopic topic = jmssession.gettopic("demotopic"); 4: IMessageConsumer consumer = jmssession.createconsumer(topic); 51

52 Seifenfrei ActiveMQ und NMS (7/8) Beispiel C# Subscriber Beispiel (2/2) 5: consumer.listener += new MessageListener( new Client().OnMessage); connection.start(); } 6: public void OnMessage(IMessage message) { try { if (message is ItextMessage) { ITextMessage msg = message as ITextMessage; Console.WriteLine("Nachricht : " + msg.text); } } catch (NMSException e) { Console.WriteLine(e); } } 52

53 Seifenfrei ActiveMQ und NMS (8/8) Vor- und Nachteile Integrationsaufwand Ähnliches Programmiermodell in Java und.net Transaktionen werden unterstützt Reliable Messaging wird unterstützt Lastverteilung lässt sich leicht realisieren Sicherheit über HTTPS Funktioniert nur mit OpenWire- oder Stomp-basierten JMS Broker 53

54 Seifenfrei Es gibt viele Alternativen RPC basierte Varianten IIOP.Net Hessian [Internet Communication Environment (Ice)] Event/Messaging basierte Varianten ActiveMQ mit NMS IceStrom [IIOP.Net] 54

55 Seifenfrei IceStorm (1/8) Internet Communication Environment (ICE) ZeroC (www.zeroc.com) Lizenzmodell Kostenlos für nicht-kommerzielle und akademische Projekt Kostenpflichtig für kommerziellen Einsatz Komplettes Programmiermodell zur Entwicklung verteilter System, sowohl RPC als auch Nachrichten-basierter Systeme Implementierungen verfügbar für C++, C#, Java, VisualBasic, Ruby, Perl und Python 55

56 Seifenfrei IceStorm (2/8) Das Ice Programmiermodell ist sehr stark an CORBA angelegt Ice Client Anwendung Proxy Service Schnittstelle Ice Server Servantl ServantLocator ObjectAdapter Ice Communicator Ice Nachricht Ice Communicator 56

57 Seifenfrei IceStorm (3/8) IceStrom unterstützt ausschließlich Publisher-Subscriber Asynchrone Kommunikation zwischen einem Sender und mehreren Empfängern Empfänger 1 Sender Topic. IceStorm Broker Federation von IceStrom Broker ist möglich Nachrichten sind nicht persistent Topics und Subscriber können persistent sein Empfänger n 57

58 Seifenfrei IceStorm (4/8) Ice(Storm) beschreibt Schnittstellen und Nachrichten mittels der Specification Language for Ice (SLICE) 1: module Demo { 2: interface DemoService { 3: void melde(string wert); 4: }; 5: }; Stubs und Skeletons der entsprechenden Zielplattform mittels slice2* generieren 58

59 Seifenfrei IceStorm (5/8) Ice Publisher in Java 1: IceStorm.TopicManagerPrx manager = IceStorm.TopicManagerPrxHelper.checkedCast( communicator().propertytoproxy("topicmanager.proxy")); 2: IceStorm.TopicPrx topic = manager.retrieve("demotopic"); 3: DemoService clock = DemoServicePrxHelper.uncheckedCast(publisher); 4: clock.melde("hallo eine Nachricht"); 59

60 Seifenfrei IceStorm (6/8) Ice Subscriber in C# (1/2) 1: IceStorm.TopicManagerPrx manager = IceStorm.TopicManagerPrxHelper.checkedCast( communicator().propertytoproxy("topicmanager.proxy")); 2: IceStorm.TopicPrx topic = manager.retrieve("demotopic"); 3: Ice.ObjectAdapter adapter = communicator().createobjectadapter("demo.subscriber"); 4: Ice.Identity subid = new Ice.Identity(id, Ice.Util.generateUUID()); 5: Ice.ObjectPrx subscriber = adapter.add(new ServiceImpl(), subid); 6: topic.subscribeandgetpublisher(qos, subscriber); 7: adapter.activate(); 60

61 Seifenfrei IceStorm (7/8) Ice Subscriber in C# (2/2) 8: public class ServiceImpl : DemoServiceDisp_ { public override void melde(string wert, Ice.Current current) { Console.WriteLine(wert); } } 61

62 Seifenfrei IceStorm (8/8) Vor- und Nachteile Einheitliches Programmiermodell für alle Plattformen Sicherheit über SSL Reliable Messaging (ordered messages) wird unterstützt Ähnliche Komplexität wie CORBA Keine Transaktionen wie bei JMS 62

63 Seifenfrei Zusammenfassung (1/3) Es gibt sowohl für RPC als auch Nachrichten-basierte Systeme Alternativen zu Webservices Die Entscheidung ob und welche Alternative einsetzbar ist, ist grundsätzlich vom Projekt und dessen Anforderungen abhängig 63

64 Seifenfrei Zusammenfassung (2/3) Eigenschaft WCF / java IIOP.Net Hessian(CS) ActiveMQ Ice(Storm) Lizenzmodell LGPL LGPL Apache kommerziell Codierung XML GIOP binär binär binär Transport HTTP TCP TCP HTTP TCP TCP UDP Firewalltauglich Programmiermodell leicht Modell des eingesetzten Produkts schwierig (Bidirectional IIOP).Net Remoting CORBA bzw. EJB Modell leicht schwierig bedingt Eigenes Modell für.net Servlet API in Java JMS (-like) Gleiches Modell sowohl in :Net als auch Java Schnittstellen WSDL IDL API API SLICE Dokumentation ++ + o + ++ Prof. Service ++ o o

65 Seifenfrei Zusammenfassung (3/3) Eigenschaft WCF / java IIOP.Net Hessian(CS) ActiveMQ Ice(Storm) Sicherheit Transaktionen Zuverlässigke it WS Security HTTS WS Transaction WS Reliability COS Security IIOP/SSL COS Transaction COS Event Notification HTTPS Apache OpenSSL n/a n/a JMS Transaction JMS durable n/a Bedingt (keine persistenten Nachrichten) Performance - + o

66 Fragen? Vielen Dank! 66

Themen. Web Service - Clients. Kommunikation zw. Web Services

Themen. Web Service - Clients. Kommunikation zw. Web Services Themen Web Service - Clients Kommunikation zw. Web Services Bisher: Implementierung einer Java Anwendung und Bereitstellung durch Apache Axis unter Apache Tomcat Java2WSDL Erzeugen einer WSDL-Datei zur

Mehr

Arten von Broker Architekturen

Arten von Broker Architekturen Arten von Broker Architekturen Common Object Request Broker Architecture (CORBA) Entworfen von Object Management Group (OMG) Für Datenaustausch und Kommunikation zwischen Komponenten verschiedener Programmiersprachen

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

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

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

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

Übersicht. Angewandte Informatik 2 - Tutorium 6. Teile einer WSDL-Datei. Was ist WSDL. Besprechung: Übungsblatt 5

Übersicht. Angewandte Informatik 2 - Tutorium 6. Teile einer WSDL-Datei. Was ist WSDL. Besprechung: Übungsblatt 5 Übersicht Angewandte Informatik 2 - Tutorium 6 Besprechung: Übungsblatt 5 Götz Bürkle (goetz@buerkle.org) Übungsblatt 5: Aufgabe 4 - Webservices Institut für Angewandte Informatik und Formale Beschreibungsverfahren

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-Services Implementierung mit Java

Web-Services Implementierung mit Java Web-Services Implementierung mit Java J. Heinzelreiter WS 2004/05 Java-APIs für Web-Services (1) Anwendungs-Code JAXR JAXM JAX-RPC SAAJ SOAP/SwA JWSDL WSDL XML/XML-Schema Web-Services/Java - 2 Java-APIs

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

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

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

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

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

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

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

Systemprogrammierung. Projekt: Java RMI. Wintersemester 2006 / 2007

Systemprogrammierung. Projekt: Java RMI. Wintersemester 2006 / 2007 Systemprogrammierung Projekt: Java RMI Wintersemester 2006 / 2007 Systemprogrammierung 1. Einleitung 2. Einführung in RPC 3. RMI 4. Code Beispiele 5. Live Vorstellung 6. Ausblick 7. Fazit 2 1. Einleitung

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

Middleware. im Schweinsgalopp

Middleware. im Schweinsgalopp Middleware im Schweinsgalopp 1 Szenario Unternehmen verwendet SAP als ERP-System wickelt Versand über Dienstleister, hier UPS ab UPS bietet Verfolgung der Lieferung über Web- Schnittstelle Daten im ERP

Mehr

Multiuser Client/Server Systeme

Multiuser Client/Server Systeme Multiuser /Server Systeme Christoph Nießner Seminar: 3D im Web Universität Paderborn Wintersemester 02/03 Übersicht Was sind /Server Systeme Wie sehen Architekturen aus Verteilung der Anwendung Protokolle

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

Auszug aus JAX-WS Folien

Auszug aus JAX-WS Folien Auszug aus JAXWS Folien Dieses Dokument ist ein Auszug aus unserem Skript zur Java Web Services Schulung. Es dient lediglich als Beispiel für unsere Kursunterlagen. Thomas Bayer Hauptstraße 33 75050 Gemmingen

Mehr

Ein einfacher Server. .NET Remoting. Klassentypen

Ein einfacher Server. .NET Remoting. Klassentypen Einführung - eine Klienten-Applikation kann mit einer Komponente interagieren die hinter einer Grenze liegt - Remoting ermöglicht eine Kommunikation von Komponenten Kontext-, Applikationsdomänen- (leichtgewichtiger

Mehr

AKWi: SOA SOA-Technologiebenchmark Java RMI vs. Microsoft WCF

AKWi: SOA SOA-Technologiebenchmark Java RMI vs. Microsoft WCF AKWi: SOA SOA-Technologiebenchmark Java RMI vs. Microsoft WCF Mathias Slawik, SS 2009 Agenda Technologien Java RMI (Remote Method Invocation) Microsoft WCF (Windows Communication Foundation) Benchmark

Mehr

CORBA. Systemprogrammierung WS 2006-2007

CORBA. Systemprogrammierung WS 2006-2007 CORBA Systemprogrammierung WS 2006-2007 Teilnehmer: Bahareh Akherattalab Babak Akherattalab Inhaltsverzeichnis: Verteilte Systeme Vergleich zwischen lokale und verteilte Systeme Verteilte Anwendungen CORBA

Mehr

CORBA & CCM. )bersicht CORBA CCM. Abschluss. CORBA :: Motivation. von Malte B. Blanken. CORBA :: Was ist das? Open Source Produkte

CORBA & CCM. )bersicht <? > CORBA CCM. Abschluss. CORBA :: Motivation. von Malte B. Blanken. CORBA :: Was ist das? Open Source Produkte CA :: Motivation CA & CCM von Malte B. Blanken Mr. X hat einen Windows!Server. Auf diesem bietet er einen Dienst an, welcher auf Anfrage die Zeichenkette "Das Leben ist sch#n!!$ ausgibt. Dieser Dienst

Mehr

Mobile und Verteilte Datenbanken

Mobile und Verteilte Datenbanken Mobile und Verteilte Datenbanken Java RMI Vorlesung Wintersemester 2013/2014 groppe@ifis.uni-luebeck.de Institut für Informationssysteme Universität zu Lübeck Kommunikations-Middleware Bietet höhere Kommunikations-Dienste

Mehr

Client/Server-Programmierung

Client/Server-Programmierung Client/Server-Programmierung WS 2014/2015 Betriebssysteme / verteilte Systeme rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404 Stand: 15. Oktober 2015 Betriebssysteme / verteilte

Mehr

Client/Server-Programmierung

Client/Server-Programmierung Client/Server-Programmierung WS 2014/2015 Betriebssysteme / verteilte Systeme rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404 Stand: 15. Oktober 2015 Betriebssysteme / verteilte

Mehr

Übungen zu Softwaretechnik

Übungen zu Softwaretechnik Prof. Dr. Dr. h.c. M. Broy Lösungsblatt 11 Dr. H. Ehler, S. Wagner 23. Januar 2004 Übungen zu Softwaretechnik Aufgabe 16 Qualitätseigenschaften Broker-Pattern Beurteilen Sie das in Aufgabe 15 benutzte

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

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

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

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

Vorbereitungen Download. AVO-Übung 6. Beispiel. Slice. Varianten u.a. für Linux, Windows, OS X ICE-Dokumentation ICE-Binaries (inkl.

Vorbereitungen Download. AVO-Übung 6. Beispiel. Slice. Varianten u.a. für Linux, Windows, OS X ICE-Dokumentation ICE-Binaries (inkl. Vorbereitungen Download AVO-Übung ICE Andreas I. Schmied (andreas.schmied@uni-ulm.de) AspectIX-Team Abteilung Verteilte Systeme Universität Ulm WS005 Varianten u.a. für Linux, Windows, OS X ICE-Dokumentation

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

Next generation open source BPM JBoss jbpm 4. Java Forum Stuttgart 02.07.2009 bernd.ruecker@camunda.com

Next generation open source BPM JBoss jbpm 4. Java Forum Stuttgart 02.07.2009 bernd.ruecker@camunda.com Next generation open source BPM JBoss jbpm 4 Java Forum Stuttgart 02.07.2009 bernd.ruecker@camunda.com Bernd Rücker / bernd.ruecker@camunda.com / 2 Guten Morgen Berater, Trainer, Coach Softwareentwickler

Mehr

WebServices Zwischen Buzzword und Nutzen

WebServices Zwischen Buzzword und Nutzen WebServices Zwischen Buzzword und Nutzen Tobias Koenig Übersicht Webservices Allgemein WSDL Anwendungsbeispiele Programmierung Perl Python C++/KDE Zusammenfassung LUG Dresden 2005 p.1 Webservices Trennung

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

SOA, Webservices und SOAP für Schnelleinsteiger

SOA, Webservices und SOAP für Schnelleinsteiger SOA, Webservices und SOAP für Schnelleinsteiger (C)opyright 2005 by Jochen Vajda Inhalt Einführung I. Was ist SOA? II. Webservices, SOAP und WSDL SOAP mit PHP5 I. Benötigte Komponenten II. Client ohne

Mehr

Norm 410 Security Token Service

Norm 410 Security Token Service 1 Norm 410 Security Token Service 2 3 4 Release und Version Release 2 Version 2.5.0 (2.4.0) vom 25.04.2013, NAUS-Beschluss vom 14.06.2012 5 6 7 8 9 10 Status Arbeitsentwurf vom 12.08.2008 Potenzielle Norm

Mehr

Theorie und Praxis einer JSON-RPC-basierten Web-API

Theorie und Praxis einer JSON-RPC-basierten Web-API Theorie und Praxis einer JSON-RPC-basierten Web-API Christian Krause Christian.Krause@raritan.com Raritan Deutschland GmbH Chemnitzer LinuxTage 2015 Gliederung 1 2 Remote Procedure Call Interface Definition

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

Web-Sevices : WSDL Entwicklung von Web-Anwendungen

Web-Sevices : WSDL Entwicklung von Web-Anwendungen Web-Sevices : WSDL Entwicklung von Web-Anwendungen Axel Reusch : ar047 MIB page 1 : 50 Agenda! Allgemeines! Prinzip! Anwendung! Details! WSDL und SOAP! Beispiel mit Java! Erweiterungen! Vorteile! Nachteile!

Mehr

Verteilte Systeme. Verteilte Objektorientierte Systeme II. Prof. Dr. Oliver Haase

Verteilte Systeme. Verteilte Objektorientierte Systeme II. Prof. Dr. Oliver Haase Verteilte Systeme Verteilte Objektorientierte Systeme II Prof. Dr. Oliver Haase 1 Überblick Verteilte Objektorientierte Systeme 1 RPC verteilte objektorientierte Architekturen Java RMI Verteilte Objektorientierte

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

Seminar E-Services WS 02/03 WSDL. Web Services Description Language. Moritz Kleine SES 02 - WSDL

Seminar E-Services WS 02/03 WSDL. Web Services Description Language. Moritz Kleine SES 02 - WSDL Seminar E-Services WS 02/03 WSDL Web Services Description Language SES 02 - WSDL Zum Ablauf Einleitung Webservices und WSDL Grundlagen (XML - Schema und Namespaces) WSDL Syntax Beispiel Zusammenfassung

Mehr

Enterprise JavaBeans Überblick

Enterprise JavaBeans Überblick Enterprise JavaBeans Überblick 1. Überblick Java EE 5 und Komponententechnologien 3. Enterprise JavaBeans Architektur 4. Ressourcen Management und Primäre Services 5. Java Persistence: Entity Manager 6.

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

CORBA. Beispiel einer Middleware-Plattform. Christian Fass WS 2013/14 Software Engineering: Basistechnologien

CORBA. Beispiel einer Middleware-Plattform. Christian Fass WS 2013/14 Software Engineering: Basistechnologien CORBA Beispiel einer Middleware-Plattform Christian Fass WS 2013/14 Software Engineering: Basistechnologien Allgemeines Common Object Request Broker Architecture Middleware: Vermittelt zwischen Obekten/Prozessen

Mehr

XML-RPC, SOAP und Web Services. Jörn Clausen joern@techfak.uni-bielefeld.de

XML-RPC, SOAP und Web Services. Jörn Clausen joern@techfak.uni-bielefeld.de XML-RPC, SOAP und Web Services Jörn Clausen joern@techfak.uni-bielefeld.de Übersicht Was ist RPC? Was hat XML mit RPC zu tun? Was sind XML-RPC und SOAP? Was sind Web Services? Wird das die Welt retten?

Mehr

Service Oriented Architectures

Service Oriented Architectures Dr.-Ing. Hartmut Kocher Kirchplatz 5 D - 82049 Pullach im Isartal Tel. 089 / 744 850 0 http://www.cortex-brainware.de mailto:hwk@cortex-brainware.de Bild 1 Übersicht Geschäftliche Anforderungen Von Prozeduren

Mehr

Softwareentwicklung in verteilten Umgebungen Middleware Case Studies (Coulouris et al., Kapitel 5 und 19) Dieter Schmalstieg Jens Grubert

Softwareentwicklung in verteilten Umgebungen Middleware Case Studies (Coulouris et al., Kapitel 5 und 19) Dieter Schmalstieg Jens Grubert Softwareentwicklung in verteilten Umgebungen Middleware Case Studies (Coulouris et al., Kapitel 5 und 19) Dieter Schmalstieg Jens Grubert Partly based on material by Victor García Barrios and Paul Krzyzanowski

Mehr

Java RMI Remote Method Invocation

Java RMI Remote Method Invocation Java RMI Remote Method Invocation Ziel: Aufruf von Instanzmethoden entfernter Objekte basierend auf Java. Paket: java.rmi und Unterpakete Topologie: RMI Registry RMI Server RMI Client Der Server registriert

Mehr

Netzprogrammierung Web-Dienste

Netzprogrammierung Web-Dienste Netzprogrammierung Web-Dienste Robert Tolksdorf und Mitarbeiter und Peter Löhr Überblick 1. Was sind Web-Dienste? 3 2. WSDL 13 3. Axis 20 4. SOAP 23 5. SOAP und HTTP 30 6. Zusammenfassung 36 Robert Tolksdorf

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

Anleitung. Ein einfaches RMI-Beispiel. (ab Java 5.0) c Y. Pfeifer. (Juni 2014)

Anleitung. Ein einfaches RMI-Beispiel. (ab Java 5.0) c Y. Pfeifer. (Juni 2014) Anleitung Ein einfaches RMI-Beispiel (ab Java.0) c Y. Pfeifer (Juni 014) 1 Ein einfaches RMI-Beispiel Vorgehensweise: 1. Java Projekt anlegen. Zwei Packages server & client erstellen Auf der Server-Seite

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

Kommunikation. Björn und Georg

Kommunikation. Björn und Georg Kommunikation Björn und Georg CORBA CORBA (Common Object Request Broker Architecture) Entwicklung der OMG ( Object Management Group) Zusammenschluss von 800 Firmen Hardware- und Progammiersprachen-unabhängiges

Mehr

CORBA. Eine kurze Einführung. Common Object Request Broker Architecture. Ying Lu

CORBA. Eine kurze Einführung. Common Object Request Broker Architecture. Ying Lu CORBA Common Object Request Broker Architecture Eine kurze Einführung Ying Lu Verlauf der Präsentation Was ist CORBA CORBA-Architektur Ein Beispiel CORBA im Einsatz CORBA im Vergleich Was ist CORBA Begriffe

Mehr

Axis2, CXF und JAX-WS RI im Vergleich

Axis2, CXF und JAX-WS RI im Vergleich Axis2, CXF und JAX-WS RI im Vergleich predic8 GmbH Moltkestr. 40 53173 Bonn Tel: (0228)5552576-0 www.predic8.de info@predic8.de Inhalt Einführung Die Standards: JAXB, JWS, JAX-WS Axis2 CXF JAX-WS RI /

Mehr

Java API for XML-based RPC

Java API for XML-based RPC Java API for XML-based RPC 1 Agenda Einführung JAX-RPC Core APIs Clientseitige Entwicklung Serverseitige Entwicklung JAX-RPC Runtime Services Handler mit JAX-RPC Type Mapping Framework 2 Agenda Einführung

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

Inhaltsverzeichnis. Zusammenfassung CORBA

Inhaltsverzeichnis. Zusammenfassung CORBA Inhaltsverzeichnis 1 Was und wofür ist CORBA?... 2 1.1 Problematik in Verteilten Systemen... 2 1.2 Entwurfszeile... 2 2 Zweck und Ziele von OMG?... 2 3 Was ist eine Schnittstellenarchitektur?... 2 3.1

Mehr

KompaSbilität zu Standards (WS- I) Contracts. Interfaces und Generics Umfangreiche AXribuSerung. Mehr Spielraum auf Transportebene

KompaSbilität zu Standards (WS- I) Contracts. Interfaces und Generics Umfangreiche AXribuSerung. Mehr Spielraum auf Transportebene Komponenten WCF (.NET Framework) WCF Verfeinerung und Reifung der ursprünglichen Version Geringere Unterschiede zu ASMX 2.0 (.NET 2.0) + WSE 3.0 Schwerpunkte KompaSbilität zu Standards (WS- I) Contracts

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

-Testen verteilter Anwendungen

-Testen verteilter Anwendungen -Testen verteilter Anwendungen Seminar Simulation und Bildanalyse mit Java im SS04 Konstantin Tjo, Urs Pricking Testen verteilter Anwendungen 1 Übersicht Einführung in verteilte Anwendungen RMI (Remote

Mehr

wsdl-analyse von hand kein normaler mensch macht das am beispiel currencyconverter

wsdl-analyse von hand kein normaler mensch macht das am beispiel currencyconverter wsdl-analyse von hand kein normaler mensch macht das am beispiel currencyconverter worgtsone.scienceontheweb.com - mailto: worgtsone @ hush.com 2013-10-18 18. Oktober 2013 Inhaltsverzeichnis 1 Intro 1

Mehr

Spezifikation DPD und primetime WebService Shopfinder Gültig für Paketversender in Österreich. Version 3.3.0

Spezifikation DPD und primetime WebService Shopfinder Gültig für Paketversender in Österreich. Version 3.3.0 Spezifikation DPD und primetime WebService Shopfinder Gültig für Paketversender in Österreich Version 3.3.0 1 Inhaltsverzeichnis 1 Inhaltsverzeichnis... 2 2 Allgemein... 3 2.1 Beschreibung... 3 3 Softwaretechnische

Mehr

Hello World from CORBA

Hello World from CORBA Hello World from CORBA ein erster Überblick Aufruf einer Objekt-Methode Client gettemperature() Thermometer Objekt- Implementation Thermometer th = new Thermometer(); double t = th.gettemperature(); th

Mehr

Erste Erfahrungen mit NSASJ anhand der OmnivoBase Portierung. September 2013

Erste Erfahrungen mit NSASJ anhand der OmnivoBase Portierung. September 2013 GTUG Java Arbeitskreis Erste Erfahrungen mit NSASJ anhand der OmnivoBase Portierung September 2013 Jürgen Depping CommitWork GmbH Seite 1 Info@CommitWork.de www.commitwork.de Agenda Was ist OmnivoBase?

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

The wireless telegraph is not difficult to understand. The ordinary telegraph is like a very long cat.

The wireless telegraph is not difficult to understand. The ordinary telegraph is like a very long cat. The wireless telegraph is not difficult to understand. The ordinary telegraph is like a very long cat. You pull the tail in New York, and the cat meows in Los Angeles. The wireless is the same, only without

Mehr

Komponententechnologien Winter 2016/17. Komponenten. 2. Die Anfänge. Peter Sturm, Universität Trier 1

Komponententechnologien Winter 2016/17. Komponenten. 2. Die Anfänge. Peter Sturm, Universität Trier 1 Komponenten 1 2. Die Anfänge 3 Peter Sturm, Universität Trier 1 Selbstzufrieden Anwendung Hardware 4 Oh? Da gibt es noch jemanden? Anwendung Anwendung TCP/IP Hardware Hardware 5 Peter Sturm, Universität

Mehr

Technische Spezifikation Schnittstelle sedex Autorisierungs-Dienst

Technische Spezifikation Schnittstelle sedex Autorisierungs-Dienst Eidgenössisches Finanzdepartement EFD Bundesamt für Informatik und Telekommunikation BIT Lösungszentrum E-Government Technische Spezifikation Projektname: sedex Projektnummer: Version: V1.1 Status in Arbeit

Mehr

Web Services Monitoring

Web Services Monitoring Web Services Monitoring Foliensatz zum Vortrag von der OIO Hauskonferenz am 17. Dezember 2009 predic8 GmbH Moltkestr. 40 53173 Bonn www.predic8.de info@predic8.de Ihr Sprecher Thomas Bayer Trainer, Berater,

Mehr

Einführung in Web Services

Einführung in Web Services Einführung in Web Services Seminar Web Services am 18.05.2004 von Can Okutan und Sascha Schnaufer Betreuer: Andreas Kamper Agenda Einführung Aufbau von Mehrbenutzer-Anwendungen RMI Corba Warum Webservices?

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

Client/Server-Systeme

Client/Server-Systeme Client/Server-Systeme Prof. Dr.-Ing. Wilhelm G. Spruth SS 2005 Teil 16 RMI, DCOM, Webservices cs 1100 ww6 sch 05-97 Remote Method Invocation (RMI) JVM JVM Client Server Stub Java Remote Skeleton Method

Mehr

Warum EJB Technologie (1)?

Warum EJB Technologie (1)? Datenbanken und Informationssysteme 2 SS 2004 Prof. Dr. Stefan Böttcher Universität Paderborn Datenbanken und Informationssysteme 2 - Prof. Dr. Stefan Böttcher - SS 2004 Folie EJB - 1 Warum EJB Technologie

Mehr

Comtarsia Web Client 2006. Einführung und Installation

Comtarsia Web Client 2006. Einführung und Installation Comtarsia Web Client 2006 Einführung und Installation Version: 1.2.5.4, 04-Jul-2006 Inhaltsverzeichnis 1. Comtarsia Web Client... 3 1.1 Einführung... 3 1.2 Funktionsbeschreibung... 3 1.2.1 HTML Interface...

Mehr

Objektorientierte Softwareentwicklung

Objektorientierte Softwareentwicklung Objektorientierte Softwareentwicklung Part 4 - Schnittstellen-Konzept (interface) Die Inhalte der Vorlesung wurden primär auf Basis der angegebenen Literatur erstellt. Darüber hinaus sind viele Teile direkt

Mehr

SOAP. SOAP: Envelope

SOAP. SOAP: Envelope SOAP Simple Object Access Protocol XML-basierter Nachrichtenaustauschmechanismus Projektbeginn 1998 (Microsoft). Heute: SOAP V1.2 W3C Recommendation http://www.w3.org/2002/ws/ Spezifikation umfasst: SOAP

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

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

5. Web-Services. Kommunikation zwischen Client und Server über XML-Format SOAP

5. Web-Services. Kommunikation zwischen Client und Server über XML-Format SOAP 1 5. Web-Services Kommunikation zwischen Client und Server über XML-Format SOAP Client SOAP Server Beschreibung von Webservices in WSDL (Web Services Description Language) Web Service Protokollstapel Suche

Mehr

Komponentenmodelle II

Komponentenmodelle II Komponentenmodelle II DCOM / CORBA Detlef Streitferdt Technische Universität Ilmenau DCOM Architektur Client Proxy Stub Component CoCreateInstance Security Provider DCE RPC Protocol Stack Security Provider

Mehr

Evaluierung verteilter Middleware-Technologien zur Steigerung der Integrationsfähigkeit von Enterprise-Software

Evaluierung verteilter Middleware-Technologien zur Steigerung der Integrationsfähigkeit von Enterprise-Software Evaluierung verteilter Middleware-Technologien zur Steigerung der Integrationsfähigkeit von Enterprise-Software Diplomarbeit Alexander Matuschinski Betreuer: Prof. Dr. Lutz Prechelt Zweitgutachter: Prof.

Mehr

Nahtlose Integration von J2EE, CORBA und.net

Nahtlose Integration von J2EE, CORBA und.net Nahtlose Integration von J2EE, CORBA und.net Integration der unterschiedlichen Welten ohne zusätzliche Brückenprodukte Autor: Martin Heinzl, Senior Consultant Immer wieder müssen von IT-Verantwortlichen

Mehr

Design von Selbstmanagement Controllern. auf Basis von JADE-Agenten. Markus Fischer

Design von Selbstmanagement Controllern. auf Basis von JADE-Agenten. Markus Fischer Verteilte Systeme Design von Selbstmanagement Controllern auf Basis von JADE-Agenten Markus Fischer Verteilte Systeme Markus Fischer (143503) F [1] Übersicht 1. Aufgabenstellung 2. Grundlagen 3. Umsetzung

Mehr

Webentwicklung mit Vaadin 7. Theoretische und praktische Einführung in Vaadin 7. Christian Dresen, Michael Gerdes, Sergej Schumilo

Webentwicklung mit Vaadin 7. Theoretische und praktische Einführung in Vaadin 7. Christian Dresen, Michael Gerdes, Sergej Schumilo Webentwicklung mit Vaadin 7 Theoretische und praktische Einführung in Vaadin 7 Christian Dresen, Michael Gerdes, Sergej Schumilo Agenda Allgemeines Architektur Client-Side Server-Side Vaadin UI Components

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

3-schichtige Informationssystem-Architektur

3-schichtige Informationssystem-Architektur 3-schichtige Informationssystem-Architektur plattformunabhängig beliebige Endgeräte Client als Applikation & Applet XML über SOAP Standard plattformunabhängig objektorientierte Architektur multiuserfähig

Mehr

Masterkurs Verteilte betriebliche Informationssysteme

Masterkurs Verteilte betriebliche Informationssysteme Peter Man dl Masterkurs Verteilte betriebliche Informationssysteme Prinzipien, Architekturen und Technologien Mit 196 Abbildungen STUDIUM VIEWEG+ TEUBNER 1 Einführung in verteilte Systeme 1 1.1 Definitionen

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

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

WebServices -reloaded-

WebServices -reloaded- WebServices -reloaded- Jan Krüger Bielefeld Bioinformatics Service Institute of Bioinformatics CeBiTec Bielefeld University jkrueger@techfak.uni-bielefeld.de 3 Juli 2007 Übersicht Motivation Was sind WebServices?

Mehr

Internetanbindung von Datenbanken

Internetanbindung von Datenbanken Internetanbindung von Datenbanken Oracle Application Server Oracle Application Server - 1 Gliederung Einführung Oracle Application Server (OAS) Praxis- und Diplomarbeitenverwaltung LiveHTML Kritik Becker,

Mehr

AvO-Übung 5 Rechnerübung zu Ice

AvO-Übung 5 Rechnerübung zu Ice AvO-Übung 5 Rechnerübung zu Ice Andreas I. Schmied und Jan-Patrick Elsholz Institut für Verteilte Systeme 7. Januar 2008 Ablauf der Übung Kombination aus Tutorial und eigenständigem Arbeiten Einfacher,

Mehr

Software Reuse Sommer 2004

Software Reuse Sommer 2004 8. Web Services Peter Sturm Universität Trier Ausgangspunkt Client/Server-Systeme Traditioneller RPC OO-Pendant RMI (CORBA) Probleme Installationbedarf auf Clientseite Aufwendige Installation auf Serverseite

Mehr