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=" xmlns:ns2=" xmlns:wsdl=" xmlns:http=" xmlns:soap=" xmlns:mime=" xmlns:mathema=" xmlns:soap12=" <wsdl:types> <xs:schema attributeformdefault="unqualified" elementformdefault="unqualified" targetnamespace=" xmlns:types=" xmlns:xs=" <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=" <wsdl:operation name="echo"> <soap:operation soapaction="urn:echo" style="document"/> <wsdl:input> <soap:body use="literal" namespace=" </wsdl:input> <wsdl:output> <soap:body use="literal" namespace=" </wsdl:output> </wsdl:operation> </wsdl:binding> <wsdl:service name="soapperftest"> <wsdl:port name="soapperftestsoap11port" binding="mathema:soapperftestsoap11binding"> <soap:address location=" </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 ( 3.2 oder Alternative Hessian4J 1.0).Net (C#) ( , 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 = " 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 ( 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

Interoperabilität einmal anders

Interoperabilität einmal anders Interoperabilität einmal anders thomas.haug@mathema.de www.mathema.de Agenda Motivation Alternativen Fazit Foto: pixelio.de knipseline 2 Agenda Motivation Alternativen Fazit Foto: pixelio.de knipseline

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

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

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

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

Ü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

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

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

Haben Sie schon einmal aus einem ScreenCobol Requestor ein Java Programm aufgerufen?

Haben Sie schon einmal aus einem ScreenCobol Requestor ein Java Programm aufgerufen? Haben Sie schon einmal aus einem ScreenCobol Requestor ein Java Programm aufgerufen? Januar 2012 CommitWork GmbH Seite 1 Info@CommitWork.de www.commitwork.de Motivation Modernisierung eines Systems mit

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

Ü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

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

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

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

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

Session Beans & Servlet Integration. Ralf Gitzel ralf_gitzel@hotmail.de

Session Beans & Servlet Integration. Ralf Gitzel ralf_gitzel@hotmail.de s & Servlet Integration Ralf Gitzel ralf_gitzel@hotmail.de 1 Themenübersicht Ralf Gitzel ralf_gitzel@hotmail.de 2 Übersicht Motivation Das Interface Stateful und Stateless s Programmierung einer Stateful

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

WebService in Java SE und EE

WebService in Java SE und EE Schlüsselworte Java, JAX-WS, JAX-RS, JAXB, XML. Einleitung WebService in Java SE und EE Wolfgang Nast MT AG Ratingen Es werden die Mölichkeiten von WebServices in Java SE und EE, mit SOAP und REST gezeigt.

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

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

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

Mehr

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

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

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

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

Wissenschaftliche Vertiefung Web Services. Esslingen, 22. Januar 2016 Simon Schneider

Wissenschaftliche Vertiefung Web Services. Esslingen, 22. Januar 2016 Simon Schneider Wissenschaftliche Vertiefung Web Services Esslingen, 22. Januar 2016 Agenda 1. Einführung 2. Serviceorientierte Architektur 3. SOAP Web Service 4. Standards und Protokolle von SOAP Web Services 5. Bewertung

Mehr

Java: Vererbung. Teil 3: super() www.informatikzentrale.de

Java: Vererbung. Teil 3: super() www.informatikzentrale.de Java: Vererbung Teil 3: super() Konstruktor und Vererbung Kindklasse ruft SELBSTSTÄNDIG und IMMER zuerst den Konstruktor der Elternklasse auf! Konstruktor und Vererbung Kindklasse ruft SELBSTSTÄNDIG und

Mehr

Daniel Warneke warneke@upb.de 08.05.2006. Ein Vortrag im Rahmen des Proseminars Software Pioneers

Daniel Warneke warneke@upb.de 08.05.2006. Ein Vortrag im Rahmen des Proseminars Software Pioneers Design Patterns Daniel Warneke warneke@upb.de 08.05.2006 Ein Vortrag im Rahmen des Proseminars Software Pioneers Design Patterns 1/23 Übersicht Einleitung / Motivation Design Patterns Beispiele Rolle des

Mehr

Thema: Web Services. Was ist ein Web Service?

Thema: Web Services. Was ist ein Web Service? Willkommen zum Component Ware Seminar Thema: Achim Grimm & Fabian Unterschütz Folie 1 Was ist ein Web Service? Web Services sind selbstbeschreibende, modulare Softwarekomponenten im Internet, die sich

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

Einsatzbedingungen FAMOS 3.10

Einsatzbedingungen FAMOS 3.10 Einsatzbedingungen FAMOS 3.10, Betriebssystem, Netzwerkintegration FAMOS ist als Mehrbenutzersystem konzipiert und damit voll netzwerkfähig. Die Integration in bestehende Netzwerke mit dem TCP/IP-Standard

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

Remote Method Invocation

Remote Method Invocation Remote Method Invocation Aufruf von Methoden über die Grenzen der VM hinweg. Javaprozesse der rufenden und gerufenen Methode können auf verschiedenen Hosts laufen. Eine RMI-Applikation besteht aus dem

Mehr

Übung 1 mit C# 6.0 MATTHIAS RONCORONI

Übung 1 mit C# 6.0 MATTHIAS RONCORONI Übung 1 mit C# 6.0 MATTHIAS RONCORONI Inhalt 2 1. Überblick über C# 2. Lösung der Übung 1 3. Code 4. Demo C# allgemein 3 aktuell: C# 6.0 mit.net-framework 4.6: Multiparadigmatisch (Strukturiert, Objektorientiert,

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

Objektorientierte Programmierung

Objektorientierte Programmierung Objektorientierte Programmierung 1 Geschichte Dahl, Nygaard: Simula 67 (Algol 60 + Objektorientierung) Kay et al.: Smalltalk (erste rein-objektorientierte Sprache) Object Pascal, Objective C, C++ (wiederum

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

Der lokale und verteilte Fall

Der lokale und verteilte Fall Lokale Beans Der lokale und verteilte Fall RemoteClient Lokaler Client (JSP) RemoteSession/Entity-Bean Lokale Session/Entity-Bean 2 Lokale Beans Die bisher vorgestellten EJBswaren immer in der Lage auf

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

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

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

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

GI-Services erstellen und bereitstellen

GI-Services erstellen und bereitstellen GI-Services erstellen und bereitstellen Günter Dörffel ESRI Geoinformatik GmbH g.doerffel@esri-germany.de Agenda Positionierung von GIS-Services SOA im GIS Kontext Standards und Ihre Bedeutung 2 1 Arten

Mehr

SE2-10-Entwurfsmuster-2 15

SE2-10-Entwurfsmuster-2 15 Architektur und Skalierbarkeit SE2-10-Entwurfsmuster-2 15 Skalierbarkeit Skalierbarkeit bedeutet die Anpassung einer Software an wachsende Last: Interaktionsfrequenz Nutzerzahl Anpassung durch Hinzufügen

Mehr

SAP NetWeaver Gateway. Connectivity@SNAP 2013

SAP NetWeaver Gateway. Connectivity@SNAP 2013 SAP NetWeaver Gateway Connectivity@SNAP 2013 Neue Wege im Unternehmen Neue Geräte und Usererfahrungen Technische Innovationen in Unternehmen Wachsende Gemeinschaft an Entwicklern Ausdehnung der Geschäftsdaten

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

.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

XML und SOAP Einführung und Grundlagen

XML und SOAP Einführung und Grundlagen XML und SOAP Einführung und Grundlagen Matthias Böhmer 16.12.2005 Agenda 1. XML 2. SOAP 3. Seife im Buchladen?! E-Commerce :: XML und SOAP Matthias Böhmer 16.12.2005 2 XML :: Einführung (1) extensible

Mehr

Norm 225 Service Definition mit WSDL

Norm 225 Service Definition mit WSDL 1 Norm 225 Service Definition mit WSDL 2 3 Release und Version Release 1, Version 2.0, vom 19. Juni 2007 4 5 Status Offizielle Norm 6 7 Editor Dr. Torsten Schmale, inubit AG 8 9 10 11 12 13 14 15 16 17

Mehr

Java Kurs für Anfänger Einheit 4 Klassen und Objekte

Java Kurs für Anfänger Einheit 4 Klassen und Objekte Java Kurs für Anfänger Einheit 4 Klassen und Ludwig-Maximilians-Universität München (Institut für Informatik: Programmierung und Softwaretechnik von Prof.Wirsing) 13. Juni 2009 Inhaltsverzeichnis klasse

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

Java Einführung Umsetzung von Beziehungen zwischen Klassen. Kapitel 7

Java Einführung Umsetzung von Beziehungen zwischen Klassen. Kapitel 7 Java Einführung Umsetzung von Beziehungen zwischen Klassen Kapitel 7 Inhalt Wiederholung: Klassendiagramm in UML Java-Umsetzung von Generalisierung Komposition Assoziationen 2 Das Klassendiagramm Zweck

Mehr

Henning Mersch. Tomcat. im Rahmen des RBG-Seminar SS04. Apache-Jakarta-Tomcat-Server RBG-Seminar 1/17

Henning Mersch. Tomcat. im Rahmen des RBG-Seminar SS04. Apache-Jakarta-Tomcat-Server RBG-Seminar 1/17 Henning Mersch Tomcat im Rahmen des RBG-Seminar SS04 Apache-Jakarta-Tomcat-Server RBG-Seminar 1/17 Übersicht 1. Webservices... kleine Motivation! 2. WAR und Axis - Was ist das? Ganz kurz bitte! 3....und

Mehr

Einführung in die Java- Programmierung

Einführung in die Java- Programmierung Einführung in die Java- Programmierung Dr. Volker Riediger Tassilo Horn riediger horn@uni-koblenz.de WiSe 2012/13 1 Wichtig... Mittags keine Pommes... Praktikum A 230 C 207 (Madeleine + Esma) F 112 F 113

Mehr

Konfigurationsanleitung Access Control Lists (ACL) Funkwerk. Copyright Stefan Dahler - www.neo-one.de 13. Oktober 2008 Version 1.0.

Konfigurationsanleitung Access Control Lists (ACL) Funkwerk. Copyright Stefan Dahler - www.neo-one.de 13. Oktober 2008 Version 1.0. Konfigurationsanleitung Access Control Lists (ACL) Funkwerk Copyright Stefan Dahler - www.neo-one.de 13. Oktober 2008 Version 1.0 Seite - 1 - 1. Konfiguration der Access Listen 1.1 Einleitung Im Folgenden

Mehr

C# im Vergleich zu Java

C# im Vergleich zu Java C# im Vergleich zu Java Serhad Ilgün Seminar Universität Dortmund SS 03 Gliederung Entstehung von C# und Java Überblick von C# und Java Unterschiede und Gemeinsamkeiten Zusammenfassung und Ausblick Entstehung

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

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

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

Java und XML 2. Java und XML

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

Mehr

Factory Method (Virtual Constructor)

Factory Method (Virtual Constructor) Factory Method (Virtual Constructor) Zweck: Definition einer Schnittstelle für Objekterzeugung Anwendungsgebiete: Klasse neuer Objekte bei Objekterzeugung unbekannt Unterklassen sollen Klasse neuer Objekte

Mehr

VVA Webservice Online Lieferbarkeits-Abfrage

VVA Webservice Online Lieferbarkeits-Abfrage Version 1.0 Dateiname VVA_OLA_Schnittstellenbeschreibung_2012.docx Erstellt am 30.05.2010 Seitenanzahl 5 arvato media GmbH Historie der Dokumentversionen Version Datum Autor Änderungsgrund / Bemerkungen

Mehr

Albert HAYR Linux, IT and Open Source Expert and Solution Architect. Open Source professionell einsetzen

Albert HAYR Linux, IT and Open Source Expert and Solution Architect. Open Source professionell einsetzen Open Source professionell einsetzen 1 Mein Background Ich bin überzeugt von Open Source. Ich verwende fast nur Open Source privat und beruflich. Ich arbeite seit mehr als 10 Jahren mit Linux und Open Source.

Mehr

WEB-Dienste in GIS Umgebung

WEB-Dienste in GIS Umgebung WEB-Dienste in GIS Umgebung Gerhard Smiatek Atmosphärische Umweltforschung(IMK-IFU) Institut für Meteorologie und Klimaforschung Forschungszentrum Karlsruhe GmbH gerhard.smiatek@imk.fzk.de Gliederung Einführung

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

Der Cloud Point of Purchase. EuroCloud Conference, 18. Mai 2011 (Christoph Streit, CTO & Co-Founder ScaleUp)"

Der Cloud Point of Purchase. EuroCloud Conference, 18. Mai 2011 (Christoph Streit, CTO & Co-Founder ScaleUp) Der Cloud Point of Purchase EuroCloud Conference, 18. Mai 2011 (Christoph Streit, CTO & Co-Founder ScaleUp)" Wer ist ScaleUp Hintergrund Cloud Provider ScaleUp ist ein Spin-Out des 12- Jahre alten MSPs

Mehr

Programmieren in Java

Programmieren in Java Programmieren in Java objektorientierte Programmierung 2 2 Zusammenhang Klasse-Datei In jeder *.java Datei kann es genau eine public-klasse geben wobei Klassen- und Dateiname übereinstimmen. Es können

Mehr

Verteilte Systeme CS5001

Verteilte Systeme CS5001 Verteilte Systeme CS5001 Th. Letschert TH Mittelhessen Gießen University of Applied Sciences Client-Server-Anwendungen: Vom passiven (shared state) Monitor zum aktiven Monitor Monitor (Hoare, Brinch-Hansen,

Mehr

How-to: Webserver NAT. Securepoint Security System Version 2007nx

How-to: Webserver NAT. Securepoint Security System Version 2007nx Securepoint Security System Inhaltsverzeichnis Webserver NAT... 3 1 Konfiguration einer Webserver NAT... 4 1.1 Einrichten von Netzwerkobjekten... 4 1.2 Erstellen von Firewall-Regeln... 6 Seite 2 Webserver

Mehr

Sicherheitsaspekte in Service Orientierten Architekturen. Eike Falkenberg Sommersemester 2006 Anwendungen I

Sicherheitsaspekte in Service Orientierten Architekturen. Eike Falkenberg Sommersemester 2006 Anwendungen I Sicherheitsaspekte in Service Orientierten Architekturen Eike Falkenberg Sommersemester 2006 Anwendungen I Agenda SOA? Web Services? Sicherheitsrisiko Web Services Web Services & Sicherheit Sichere SOAs

Mehr

Java RMI, CORBA und Firewalls

Java RMI, CORBA und Firewalls Java RMI, CORBA und s Lehrstuhl für Datenverarbeitung falk@ei.tum.de Verteilte Objekte s Probleme Lösungsmöglichkeiten Konkrete Lösungen Verteilte Objekte Client mehrere Objekte Methoden-Aufruf Antwort

Mehr

WPF Steuerelemente Listbox, ComboBox, ListView,

WPF Steuerelemente Listbox, ComboBox, ListView, WPF Steuerelemente Listbox, ComboBox, ListView, Dr. Beatrice Amrhein Überblick Einführung Listen ComboBox Tabellen 2 Einführung 3 Listen- und Tabellen-Elemente Listen und Tabellen-Elemente sind Steuerelemente,

Mehr

SRH Hochschule Heidelberg

SRH Hochschule Heidelberg SRH Hochschule Heidelberg Fachbereich Informatik Vertriebssysteme / CRM Johannes Dipl. Inf. (FH) Hoppe Johannes Hoppe MSP WCF Vorlesung 25.03.2009 90 Minuten, 8 Teilnehmer Dipl. Inf. (FH) Johannes Hoppe

Mehr

Themen. Web Services und SOA. Stefan Szalowski Daten- und Online-Kommunikation Web Services

Themen. Web Services und SOA. Stefan Szalowski Daten- und Online-Kommunikation Web Services Themen Web Services und SOA Wer kennt den Begriff Web Services? Was verstehen Sie unter Web Services? Die Idee von Web Services Ausgangspunkt ist eine (evtl. schon bestehende) Software Anwendung oder Anwendungskomponente

Mehr

Delegatesund Ereignisse

Delegatesund Ereignisse Delegatesund Ereignisse «Delegierter» Methoden Schablone Funktionszeiger Dr. Beatrice Amrhein Überblick Definition eines Delegat Einfache Delegate Beispiele von Delegat-Anwendungen Definition eines Ereignisses

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

Mobile Anwendungen Google Cloud Messaging

Mobile Anwendungen Google Cloud Messaging Mobile Anwendungen Google Cloud Messaging 1. Allgemeines zu Google Cloud Messaging (GCM): - 60% der Top 100 Apps nutzen Google Cloud Messagging - 200.000 Messages pro Sekunde = 17 Milliarden Messages pro

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

Prof. Dr. Uwe Schmidt. 21. August 2007. Aufgaben zur Klausur Objektorientierte Programmierung im SS 2007 (IA 252)

Prof. Dr. Uwe Schmidt. 21. August 2007. Aufgaben zur Klausur Objektorientierte Programmierung im SS 2007 (IA 252) Prof. Dr. Uwe Schmidt 21. August 2007 Aufgaben zur Klausur Objektorientierte Programmierung im SS 2007 (IA 252) Zeit: 75 Minuten erlaubte Hilfsmittel: keine Bitte tragen Sie Ihre Antworten und fertigen

Mehr

Typumwandlungen bei Referenztypen

Typumwandlungen bei Referenztypen Typumwandlungen bei Referenztypen Genau wie es bei einfachen Typen Typumwandlungen gibt, gibt es auch bei Referenztypen Umwandlungen von einem Referenztypen in einen anderen Referenztypen, die wie bei

Mehr

Übung: Verwendung von Java-Threads

Übung: Verwendung von Java-Threads Übung: Verwendung von Java-Threads Ziel der Übung: Diese Übung dient dazu, den Umgang mit Threads in der Programmiersprache Java kennenzulernen. Ein einfaches Java-Programm, das Threads nutzt, soll zum

Mehr

Java Einführung Collections

Java Einführung Collections Java Einführung Collections Inhalt dieser Einheit Behälterklassen, die in der Java API bereitgestellt werden Wiederholung Array Collections (Vector, List, Set) Map 2 Wiederholung Array a[0] a[1] a[2] a[3]...

Mehr

Web Sockets mit HTML5. Quelle: www.html5rocks.com/de

Web Sockets mit HTML5. Quelle: www.html5rocks.com/de Web Sockets mit HTML5 Quelle: www.html5rocks.com/de Intensive Client-Server-Kommunikation: Beispiele Online-Spiele mit mehreren Mitspielern Chat-Anwendungen Live-Sport-Ticker Echtzeit-Aktualisierungen

Mehr

Software Engineering Klassendiagramme Assoziationen

Software Engineering Klassendiagramme Assoziationen Software Engineering Klassendiagramme Assoziationen Prof. Adrian A. Müller, PMP, PSM 1, CSM Fachbereich Informatik und Mikrosystemtechnik 1 Lesen von Multiplizitäten (1) Multiplizitäten werden folgendermaßen

Mehr

09.01.14. Vorlesung Programmieren. Unified Modeling Language (UML) Unified Modeling Language (UML) Unified Modeling Language (UML)

09.01.14. Vorlesung Programmieren. Unified Modeling Language (UML) Unified Modeling Language (UML) Unified Modeling Language (UML) Vorlesung Programmieren Unified Modeling Language (UML) Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/fischer Unified Modeling Language (UML)

Mehr

Vorlesung Programmieren

Vorlesung Programmieren Vorlesung Programmieren Unified Modeling Language (UML) Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/fischer Unified Modeling Language (UML)

Mehr

Grundbegriffe der Informatik

Grundbegriffe der Informatik Grundbegriffe der Informatik Einheit 15: Reguläre Ausdrücke und rechtslineare Grammatiken Thomas Worsch Universität Karlsruhe, Fakultät für Informatik Wintersemester 2008/2009 1/25 Was kann man mit endlichen

Mehr

OP-LOG www.op-log.de

OP-LOG www.op-log.de Verwendung von Microsoft SQL Server, Seite 1/18 OP-LOG www.op-log.de Anleitung: Verwendung von Microsoft SQL Server 2005 Stand Mai 2010 1 Ich-lese-keine-Anleitungen 'Verwendung von Microsoft SQL Server

Mehr

Mobiles SAP für Entscheider. Permanente Verfügbarkeit der aktuellen Unternehmenskennzahlen durch den mobilen Zugriff auf SAP ERP.

Mobiles SAP für Entscheider. Permanente Verfügbarkeit der aktuellen Unternehmenskennzahlen durch den mobilen Zugriff auf SAP ERP. Beschreibung Betriebliche Kennzahlen sind für die Unternehmensführung von zentraler Bedeutung. Die Geschäftsführer oder Manager von erfolgreichen Unternehmen müssen sich deshalb ständig auf dem Laufenden

Mehr

Klausur zur Einführung in die objektorientierte Programmierung mit Java

Klausur zur Einführung in die objektorientierte Programmierung mit Java Klausur zur Einführung in die objektorientierte Programmierung mit Java im Studiengang Informationswissenschaft Prof. Dr. Christian Wolff Professur für Medieninformatik Institut für Medien-, Informations-

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

Fassade. Objektbasiertes Strukturmuster. C. Restorff & M. Rohlfing

Fassade. Objektbasiertes Strukturmuster. C. Restorff & M. Rohlfing Fassade Objektbasiertes Strukturmuster C. Restorff & M. Rohlfing Übersicht Motivation Anwendbarkeit Struktur Teilnehmer Interaktion Konsequenz Implementierung Beispiel Bekannte Verwendung Verwandte Muster

Mehr

ArcObjects-Programmierung mit Delphi. Marko Apfel, Team Entwicklung

ArcObjects-Programmierung mit Delphi. Marko Apfel, Team Entwicklung Marko Apfel, Team Entwicklung Agenda Was ist COM Was sind die ArcObjects Warum Delphi mit ArcObjects Wie greift man auf die ArcObjects mit Delphi zu Wo gibt es Informationen 2 Agenda Was ist COM Was sind

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

Komponentenbasierter Taschenrechner mit CORBA

Komponentenbasierter Taschenrechner mit CORBA Komponentenbasierter Taschenrechner mit CORBA Silke Kugelstadt Torsten Steinert Inhalt Motivation Demonstration des Taschenrechners Grobarchitektur Implementierung des Clients Implementierung der Komponenten

Mehr

Javadoc. Programmiermethodik. Eva Zangerle Universität Innsbruck

Javadoc. Programmiermethodik. Eva Zangerle Universität Innsbruck Javadoc Programmiermethodik Eva Zangerle Universität Innsbruck Überblick Einführung Java Ein erster Überblick Objektorientierung Vererbung und Polymorphismus Ausnahmebehandlung Pakete und Javadoc Spezielle

Mehr

Übersicht. Was ist FTP? Übertragungsmodi. Sicherheit. Öffentliche FTP-Server. FTP-Software

Übersicht. Was ist FTP? Übertragungsmodi. Sicherheit. Öffentliche FTP-Server. FTP-Software FTP Übersicht Was ist FTP? Übertragungsmodi Sicherheit Öffentliche FTP-Server FTP-Software Was ist FTP? Protokoll zur Dateiübertragung Auf Schicht 7 Verwendet TCP, meist Port 21, 20 1972 spezifiziert Übertragungsmodi

Mehr

Enterprise Applikation Integration und Service-orientierte Architekturen. 09 Simple Object Access Protocol (SOAP)

Enterprise Applikation Integration und Service-orientierte Architekturen. 09 Simple Object Access Protocol (SOAP) Enterprise Applikation Integration und Service-orientierte Architekturen 09 Simple Object Access Protocol (SOAP) Anwendungsintegration ein Beispiel Messages Warenwirtschaftssystem Auktionssystem thats

Mehr