XML und Java -- wohin geht die Reise?

Größe: px
Ab Seite anzeigen:

Download "XML und Java -- wohin geht die Reise?"

Transkript

1 XML und Java -- wohin geht die Reise? Mario Jeckle DaimlerChrysler Forschungszentrum Ulm

2 Gliederung I XML und Programmiersprachen... Was ist die XML heute? Aktuelle Entwicklungen des XML-Umfeldes II Stand der XML-Technologie... XML-Schema SOAP/XMLP Ausblick: Semantic Web III XML und Java eigentlich nichts Neues J2SE v1.4 Merlin XMLPack M. Jeckle XML und Java -- wohin geht die Reise?

3 XML und Programmiersprachen... Java ist... Programmiersprache Laufzeitumgebung Enterprise Application Platform (J2EE) XML ist... Informations- und Datenformat Metasprache zur Definition eigener Vokabulare... keine: Programmiersprache Ausführungsumgebung + = M. Jeckle XML und Java -- wohin geht die Reise?

4 Stand der XML-Technologie: Web Historie Web-Prähistorie 1. Generation 2. Generation XHTML v HTML XML v1.0 XLink, XPointer XSL-FO und XSLT XML Metadata Interchange Namensräume... XSLT v2 XSD part 1 XSD part 2 XML 2 nd edition XML Query XPath v2 Mod. XHTML using XSD Blueburry release... XML v M. Jeckle XML und Java -- wohin geht die Reise? t

5 Stand der XML-Technologie: Programmiersprachliches an XML Web-Prähistorie 1. Generation 2. Generation JavaML (Java in XML-Syntax) HTML... XHTML v1.0 XML v1.0 XLink, XPointer XSL-FO und XSLT XML Metadata Interchange Namensräume... XSLT v2 XSD part 1 XSD part 2 XML 2 nd edition XML Query XPath v2 Mod. XHTML using XSD Blueburry release... XML v M. Jeckle XML und Java -- wohin geht die Reise? t

6 Stand der XML-Technologie: Programmiersprachliches an XML Web-Prähistorie 1. Generation 2. Generation Vergleichbar klassischen Scopes/C++ namespaces zur Vermeidung von Namenskollisionen HTML... XHTML v1.0 XML v1.0 XLink, XPointer XSL-FO und XSLT XML Metadata Interchange Namensräume... XSLT v2 XSD part 1 XSD part 2 XML 2 nd edition XML Query XPath v2 Mod. XHTML using XSD Blueburry release... XML v M. Jeckle XML und Java -- wohin geht die Reise? t

7 Stand der XML-Technologie: Programmiersprachliches an XML Web-Prähistorie 1. Generation 2. Generation Referenzierungssyntax und -Semantik HTML... XHTML v1.0 Namensräume XML v1.0 XSL-FO und XSLT XLink, XPointer XML Metadata Interchange... XSLT v2 XSD part 1 XSD part 2 XML 2 nd edition XML Query XPath v2 Mod. XHTML using XSD Blueburry release... XML v M. Jeckle XML und Java -- wohin geht die Reise? t

8 Stand der XML-Technologie: Programmiersprachliches an XML Web-Prähistorie 1. Generation 2. Generation Turing-vollständige funktionale Programmiersprache XHTML v HTML XML v1.0 XLink, XPointer XSL-FO und XSLT XML Metadata Interchange Namensräume... XSLT v2 XSD part 1 XSD part 2 XML 2 nd edition XML Query XPath v2 Mod. XHTML using XSD Blueburry release... XML v M. Jeckle XML und Java -- wohin geht die Reise? t

9 Stand der XML-Technologie: Programmiersprachliches an XML Web-Prähistorie 1. Generation 2. Generation Vokabular zur Beschreibung von Datendefinitionen XHTML v HTML XML v1.0 XLink, XPointer XSL-FO und XSLT XML Metadata Interchange Namensräume... XSLT v2 XSD part 1 XSD part 2 XML 2 nd edition XML Query XPath v2 Mod. XHTML using XSD Blueburry release... XML v M. Jeckle XML und Java -- wohin geht die Reise? t

10 Stand der XML-Technologie: Programmiersprachliches an XML Web-Prähistorie 1. Generation 2. Generation Algebraische Anfragesprache XHTML v HTML XML v XLink, XPointer Namensräume XSD part 1 XSD part 2 XML 2 nd edition XML v2.0 M. Jeckle XML und Java -- wohin geht die Reise? XSL-FO und XSLT XML Metadata Interchange... XSLT v2 XML Query XPath v2 Mod. XHTML using XSD Blueburry release... t

11 Stand der XML-Technologie: Programmiersprachliches an XML Web-Prähistorie 1. Generation 2. Generation Sturkturmechanismen und erweiterbares Typsystem HTML... XHTML v XML v1.0 XLink, XPointer Namensräume XSD part 1 XSD part 2 XML 2 nd edition XML v2.0 M. Jeckle XML und Java -- wohin geht die Reise? XSL-FO und XSLT XML Metadata Interchange... XSLT v2 XML Query XPath v2 Mod. XHTML using XSD Blueburry release... t

12 XML-Schema... in zehn Punkten Erlaubt die Erstellung regulärer kontextfreier Grammatiken für XML-Vokabulare Part 1 beschreibt Strukturen und Inhaltseinschränkungen Part 2 definiert Datentypdefinition für Schema Part 1 und weitere XML-Vokabulare Signifikante Erweiterung der DTD-Mächtigkeit, wird diese langfristig ersetzen Ist eine XML-Sprache Integriert die wichtigsten konkurrierenden Vorgängeransätze Seit W3C Recommendation Basis aller W3C-Standards der zweiten Generation (XPath v2.0, XSLT v2.0, XHTML v2.0, XMLP,...) Werkzeugunterstützung verfügbar Erster Schritt der Schema-Bestrebungen, weitere werden folgen... M. Jeckle XML und Java -- wohin geht die Reise?

13 XML-Schema... ein Beispieldokument <?xml version="1.0" encoding="utf-8"?> <Vortrag> <Titel>XML und und Java Java wohin geht gehtdie die Reise?</Titel> <Veranstaltung datum=" "> <Name>Java Forum Stuttgart 2001</Name> </Veranstaltung> <Referent> <Name>Mario Jeckle</Name> <Firma>DaimlerChrysler Research and and Technology</Firma> <URL> </Referent> </Vortrag> M. Jeckle XML und Java -- wohin geht die Reise?

14 XML-Schema... eine beschreibende Grammatik <?xml <?xml version="1.0" version="1.0" encoding="utf-8"?> encoding="utf-8"?> <xsd:schema <xsd:schema xmlns:xsd=" xmlns:xsd=" name="vortrag"> name="vortrag"> <xsd:complextype> <xsd:complextype> <xsd:sequence> <xsd:sequence> name="titel" name="titel" type="xsd:string"/> type="xsd:string"/> ref="veranstaltung"/> ref="veranstaltung"/> ref="referent"/> ref="referent"/> </xsd:sequence> </xsd:sequence> </xsd:complextype> </xsd:complextype> </xsd:element> </xsd:element> name="veranstaltung"> name="veranstaltung"> <xsd:complextype> <xsd:complextype> <xsd:sequence> <xsd:sequence> ref="name"/> ref="name"/> Research and Technology name="name" name="name" type="xsd:string"/> type="xsd:string"/> name="referent"> name="referent"> <xsd:complextype> <xsd:complextype> <xsd:sequence> <xsd:sequence> ref="name"/> ref="name"/> name="firma" name="firma" type="xsd:string" type="xsd:string" minoccurs="0"/> minoccurs="0"/> name="url" name="url" type="xsd:anyuri" type="xsd:anyuri" minoccurs="0"/> minoccurs="0"/> name=" " name=" " minoccurs="0"> minoccurs="0"> <xsd:simpletype> <xsd:simpletype> <xsd:restriction <xsd:restriction base="xsd:string"> base="xsd:string"> <xsd:pattern <xsd:pattern </xsd:restriction> </xsd:restriction> </xsd:simpletype> </xsd:simpletype> </xsd:element> </xsd:element> <?xml version="1.0" encoding="utf-8"?> </xsd:sequence> <Vortrag> </xsd:sequence> </xsd:sequence> </xsd:sequence> <Titel>XML und und Java Java wohin geht gehtdie die Reise?</Titel> <xsd:attribute <xsd:attribute ref="datum"/> ref="datum"/> </xsd:complextype> <Veranstaltung </xsd:complextype> datum=" "> </xsd:complextype> <Name>Java </xsd:complextype> </xsd:element> Forum Stuttgart 2001</Name> </xsd:element> </Veranstaltung> </xsd:element> </xsd:element> </xsd:schema> <Referent> </xsd:schema> <xsd:attribute <xsd:attribute name="datum" name="datum" type="xsd:date"/> <Name>Mario Jeckle</Name> type="xsd:date"/> <Firma>DaimlerChrysler Research and and Technology</Firma> <URL> </Referent> M. Jeckle XML und Java -- wohin geht die Reise? </Vortrag>

15 XML-Schema... Mächtigkeit Strukturell: Attribute und Elemente (wie in DTDs) Namespace-Unterstützung Atomare Datentypen (int, float, boolean,...) Anwenderdefinierte atomare skalare Datentypen (simpletype) Einschränkung des Wertebereichs (Domänenrestriktion) lexikalische Muster (reguläre Ausdrücke) Aufzählungstypen Mengentypen komplexe Datentypen (complextype) Wiederverwendungsunterstützung Vererbung: Restriktion und Erweiterung Schemafragmente: Typen, Attribut- und Elementgruppen Substitution Erweiterter Schlüsselmechanismus NULL-Werte Research and Technology M. Jeckle XML und Java -- wohin geht die Reise?

16 XML Schema: Datentypen Ur-typ Vordefinierter Primitivtyp Vordefinierter abgeleiteter Typ Typeinschränkung Aggregierter Typ Aus: XML-Schema Part 2: Datatypes, W3C-Recommendation , chap. 3 M. Jeckle XML und Java -- wohin geht die Reise?

17 XML Schema: Datentypen und ihre Abbildung nach Java IntegralType char long string (length==1) long NumericType int int PrimitiveType short byte byte short FloatingPointType float float double double boolean boolean M. Jeckle XML und Java -- wohin geht die Reise?

18 XML-basierte RPC-Mechanismen: SOAP,... M. Jeckle XML und Java -- wohin geht die Reise?

19 XML-basierte RPC-Mechanismen: SOAP,... POST /soap/servlet/rpcrouter HTTP/1.0 POST /soap/servlet/rpcrouter HTTP/1.0 Host: localhost:8081 Host: localhost:8081 Content-Type: text/ xml; charset=utf-8 Content-Type: text/ xml; charset=utf-8 Content-Length: 474 Content-Length: 474 SOAPAction: "" SOAPAction: "" <?xml version ='1.0' encoding='utf-8'?> <?xml version='1.0' encoding='utf-8'?> <SOAP-ENV:Envelope <SOAP-ENV: Envelope xmlns:soap-env=" xmlns:soap-env=" schemas.xmlsoap.org/soap/envelope/" xmlns:xsi= " org/2001/xmlschema-instance" xmlns:xsi=" xmlns:xsd=" org/2001/xmlschema"> xmlns:xsd=" <SOAP-ENV:Body> <SOAP-ENV:Body> <ns1:add xmlns:ns1="urn: NumberAdder" <ns1:add xmlns:ns1="urn: NumberAdder" SOAP-ENV:encodingStyle=" SOAP-ENV:encodingStyle=" <number1 xsi:type="xsd:int">1</number1> <number1 xsi:type="xsd:int">1</number1> <number2 xsi:type="xsd:int">2</number2> <number2 xsi:type="xsd:int">2</number2> </ns1:add> </ns1:add> </SOAP-ENV:Body> </SOAP-ENV:Body> </SOAP-ENV:Envelope> V:Envelope> Web-Server </SOAP-EN HTTP-Port Request HTTP-Port Web-Server Firewall Firewall M. Jeckle XML und Java -- wohin geht die Reise?

20 XML-basierte RPC-Mechanismen: SOAP,... HTTP/ OK Content-Type: HTTP/ text/xml; OK charset=utf-8 Content-Length: Content-Type: 529 text/xml; charset=utf-8 Set-Cookie2: Content-Length: JSESSIONID=tibpjehn11;Version=1;Discard;Path="/soap" 529 Set-Cookie: Set-Cookie2: JSESSIONID=tibpjehn11;Path=/soap JSESSIONID=tibpjehn11;Version=1;Discard;Path="/soap" Servlet-Engine: Set-Cookie: JSESSIONID=tibpjehn11;Path=/soap Tomcat Web Server/3.2.1 (JSP Servlet-Engine: 1.1; 2.2; Tomcat Java 1.3.0; Web Server/3.2.1 Windows x86; java.vendor=sun Microsystems Inc.) (JSP 1.1; Servlet 2.2; Java 1.3.0; Windows x86; java.vendor=sun Microsystems Inc.) <?xml version='1.0' encoding='utf-8'?> <SOAP-ENV:Envelope <?xml version='1.0' encoding='utf-8'?> xmlns:soap-env=" <SOAP-ENV:Envelope xmlns:xsi=" xmlns:soap-env=" xmlns:xsd=" xmlns:xsi=" <SOAP-ENV:Body> xmlns:xsd=" <ns1:addresponse <SOAP-ENV:Body> xmlns:ns1="urn:numberadder" <ns1:addresponse SOAP-ENV:encodingStyle=" xmlns:ns1="urn:numberadder" <return SOAP-ENV:encodingStyle=" xmlns:ns2=" <return xsi:type="ns2:vector"> xmlns:ns2=" <item xsi:type="ns2:vector"> xsi:type="xsd:int">3</item> </return> <item xsi:type="xsd:int">3</item> </ns1:addresponse> </return> HTTP-Port </SOAP-ENV:Body> </ns1:addresponse> </SOAP-ENV:Envelope> </SOAP-ENV:Body> </SOAP-ENV:Envelope> Web-Server Firewall HTTP-Port Response Firewall Web-Server M. Jeckle XML und Java -- wohin geht die Reise?

21 XML-basierte RPC-Mechanismen: SOAP/XMLP vs. RMI Lesbarer Text (human readable) Hauptnutzung: B2B asynchron Verbosität SOAP/ XMLP XML-Schema Transportprotokoll unabhängigkeit Typsystem Objektorientiert Verteilungsunterstützung Zentrale Registrierungsinstanz synchron Hauptnutzung: A2A Firewallüberwindung Sprachunabhängig Programmiermodellneutral Plattformunabhängigkeit Effiziente Binärrepräsentation M. Jeckle XML und Java -- wohin geht die Reise?

22 Das XML-Universum Research and Technology Sprachentwurf Programmierung/ Schnittstellen XML-Schema (XSD) DDML Schematron RELAX NG DCD <?XML!> SAX DOM Editoren Anwendungen XML-RPC SOAP/XMLP Protokolle Werkzeugunterstützung Stylesheet-, Linkingprozessoren,... M. Jeckle XML und Java -- wohin geht die Reise?

23 XML und Java... Simple API for XML (SAX) Entwickelt durch Mitglieder der Mailingliste xml-dev auf Initiative von David Megginson Zusammenstellung sprachunabhängiger Schnittstellen Light-weight: einfach (in eigenen Programmen) einzusetzen einfach (in beliebige Programmiersprachen) umzusetzen Serieller linearer ereignisbasierter Parsingvorgang Definiert und erfordert keine Speicherstrukturen SAX ist eine Schnittstelle für Parser, kein Parser! Laufzeitverhalten skaliert linear mit Dokumentgröße JAXP und J2SE v1.4 enthält (vermutlich) eine Implementierung des aktuellen Standes SAX2 M. Jeckle XML und Java -- wohin geht die Reise?

24 XML und Java... Simple API for XML (SAX) import org.xml.sax.helpers.defaulthandler; import javax.xml.parsers.saxparserfactory; import javax.xml.parsers.saxparser; Implementierung der Standardschnittstelle public class SAXExample extends DefaultHandler public void startdocument() //... } //startdocument() public void startelement(string namespaceuri, String localname, String qname, Attributes atts) //... } //startelement() public static void main (String args[]) throws Exception SAXParserFactory spf = SAXParserFactory.newInstance(); SAXParser sp = spf.newsaxparser(); sp.parse( args[0], new SAXExample() ); } //main() }//class SAXExample M. Jeckle XML und Java -- wohin geht die Reise?

25 XML und Java... Simple API for XML (SAX) import org.xml.sax.helpers.defaulthandler; import javax.xml.parsers.saxparserfactory; import javax.xml.parsers.saxparser; SAX-Parserimplementierung der JAXP public class SAXExample extends DefaultHandler public void startdocument() //... } //startdocument() public void startelement(string namespaceuri, String localname, String qname, Attributes atts) //... } //startelement() public static void main (String args[]) throws Exception SAXParserFactory spf = SAXParserFactory.newInstance(); SAXParser sp = spf.newsaxparser(); sp.parse( args[0], new SAXExample() ); } //main() }//class SAXExample M. Jeckle XML und Java -- wohin geht die Reise?

26 XML und Java... Simple API for XML (SAX) import org.xml.sax.helpers.defaulthandler; import javax.xml.parsers.saxparserfactory; import javax.xml.parsers.saxparser; public class SAXExample extends DefaultHandler public void startdocument() //... } //startdocument() public void startelement(string namespaceuri, String localname, String qname, Attributes atts) //... } //startelement() public static void main (String args[]) throws Exception SAXParserFactory spf = SAXParserFactory.newInstance(); SAXParser sp = spf.newsaxparser(); sp.parse( args[0], new SAXExample() ); } //main() }//class SAXExample Durch SAX in ihrer Signatur vorgegebene Callback-Methoden M. Jeckle XML und Java -- wohin geht die Reise?

27 XML und Java... Simple API for XML (SAX) import org.xml.sax.helpers.defaulthandler; import javax.xml.parsers.saxparserfactory; import javax.xml.parsers.saxparser; public class SAXExample extends DefaultHandler public void startdocument() //... } //startdocument() public void startelement(string namespaceuri, String localname, String qname, Attributes atts) //... } //startelement() public static void main (String args[]) throws Exception SAXParserFactory spf = SAXParserFactory.newInstance(); SAXParser sp = spf.newsaxparser(); sp.parse( args[0], new SAXExample() ); } //main() }//class SAXExample Erzeugung eines SAX-basierten Parsers und prüfen eines XML-Dokuments M. Jeckle XML und Java -- wohin geht die Reise?

28 XML und Java... Document Object Model (DOM) W3C standardisierte API für HTML, XML, CSS, etc. Stand: Recommendation: DOM Level 1, Level 2; Working Draft: Level 3 Definiert programmiersprachenunabhängige (beschrieben durch CORBA IDL) baumartige objektorientierte Speicherstruktur für XML mit Operationen zur Navigation und Manipulation (z.b. Elemente ändern, löschen, hinzufügen) Zumeist auf Basis eines SAX-basierten Parsingvorganges erzeugt Speicheraufwand zur Verwaltung des gesamten XML-Dokuments im Hauptspeicher teilweise sehr hoch Mit JDOM existiert eine für Java optimierte moderne Implementierung (d.h. Berücksichtigung von XML-Schema, Nutzung der Collection- und Reflection API, etc.) Verfügbar: Diverse Implementierungen; JDOM, DOM4J JDOM: JSR M. Jeckle XML und Java -- wohin geht die Reise?

29 XML und Java... Document Object Model (DOM) import javax.xml.parsers.documentbuilderfactory; import javax.xml.parsers.documentbuilder; import org.w3c.dom.document; import org.w3c.dom.element; public class DOMExample public static void main(string[] args) throws Exception DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = factory.newdocumentbuilder(); Document document = builder.parse( args[0] ); Implementierung der Standardschnittstellen Element therootelement = document.getdocumentelement(); therootelement.setattribute("myfirstnewattribute","01"); Element anewelement = document.createelement("mynewelement"); therootelement.appendchild( anewelement ); System.out.print( therootelement ); } //main() } //class DOMExample M. Jeckle XML und Java -- wohin geht die Reise?

30 XML und Java... Document Object Model (DOM) import javax.xml.parsers.documentbuilderfactory; import javax.xml.parsers.documentbuilder; import org.w3c.dom.document; import org.w3c.dom.element; public class DOMExample public static void main(string[] args) throws Exception DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = factory.newdocumentbuilder(); Document document = builder.parse( args[0] ); Element therootelement = document.getdocumentelement(); Erzeugung des Parsers und Einlesevorgang therootelement.setattribute("myfirstnewattribute","01"); Element anewelement = document.createelement("mynewelement"); therootelement.appendchild( anewelement ); System.out.print( therootelement ); } //main() } //class DOMExample M. Jeckle XML und Java -- wohin geht die Reise?

31 XML und Java... Document Object Model (DOM) import javax.xml.parsers.documentbuilderfactory; import javax.xml.parsers.documentbuilder; import org.w3c.dom.document; import org.w3c.dom.element; public class DOMExample public static void main(string[] args) throws Exception DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = factory.newdocumentbuilder(); Document document = builder.parse( args[0] ); Element therootelement = document.getdocumentelement(); therootelement.setattribute("myfirstnewattribute","01"); Extraktion eines Elements Element anewelement = document.createelement("mynewelement"); therootelement.appendchild( anewelement ); System.out.print( therootelement ); } //main() } //class DOMExample M. Jeckle XML und Java -- wohin geht die Reise?

32 XML und Java... Document Object Model (DOM) import javax.xml.parsers.documentbuilderfactory; import javax.xml.parsers.documentbuilder; import org.w3c.dom.document; import org.w3c.dom.element; public class DOMExample public static void main(string[] args) throws Exception DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = factory.newdocumentbuilder(); Document document = builder.parse( args[0] ); Element therootelement = document.getdocumentelement(); therootelement.setattribute("myfirstnewattribute","01"); Element anewelement = document.createelement("mynewelement"); Hinzufügen eines (neuen) Attributs therootelement.appendchild( anewelement ); System.out.print( therootelement ); } //main() } //class DOMExample M. Jeckle XML und Java -- wohin geht die Reise?

33 XML und Java... Document Object Model (DOM) import javax.xml.parsers.documentbuilderfactory; import javax.xml.parsers.documentbuilder; import org.w3c.dom.document; import org.w3c.dom.element; public class DOMExample public static void main(string[] args) throws Exception DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = factory.newdocumentbuilder(); Document document = builder.parse( args[0] ); Element therootelement = document.getdocumentelement(); therootelement.setattribute("myfirstnewattribute","01"); Element anewelement = document.createelement("mynewelement"); therootelement.appendchild( anewelement ); Erzeugung eines neuen Elements System.out.print( therootelement ); } //main() } //class DOMExample M. Jeckle XML und Java -- wohin geht die Reise?

34 XML und Java... Document Object Model (DOM) import javax.xml.parsers.documentbuilderfactory; import javax.xml.parsers.documentbuilder; import org.w3c.dom.document; import org.w3c.dom.element; public class DOMExample public static void main(string[] args) throws Exception DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = factory.newdocumentbuilder(); Document document = builder.parse( args[0] ); Element therootelement = document.getdocumentelement(); therootelement.setattribute("myfirstnewattribute","01"); Element anewelement = document.createelement("mynewelement"); therootelement.appendchild( anewelement ); System.out.print( therootelement ); } //main() } //class DOMExample Anhängen des erzeugten Elements als zusätzliches Kindelement M. Jeckle XML und Java -- wohin geht die Reise?

35 XML und Java... Document Object Model (DOM) import javax.xml.parsers.documentbuilderfactory; import javax.xml.parsers.documentbuilder; import org.w3c.dom.document; import org.w3c.dom.element; public class DOMExample public static void main(string[] args) throws Exception DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = factory.newdocumentbuilder(); Document document = builder.parse( args[0] ); Element therootelement = document.getdocumentelement(); therootelement.setattribute("myfirstnewattribute","01"); Element anewelement = document.createelement("mynewelement"); therootelement.appendchild( anewelement ); System.out.print( therootelement ); } //main() } //class DOMExample Ausgabe des gesamten Dokuments auf Standard-out M. Jeckle XML und Java -- wohin geht die Reise?

36 Java und XML Java XML API for XML Processing (JAXP) Berücksichtigt: XML v1.0 2 nd editon ;) Namespaces SAX v2.0 DOM Level 2 XSLT v1.0 Plugability layer realisiert Informationsmöglichkeit hinsichtlich Implementierung der Parser JAXP v1.0 ist (vermutlich) Bestandteil von J2SE v1.4 Verfügbar: JAXP v1.1: JSR, Spezifikation, Implementierung M. Jeckle XML und Java -- wohin geht die Reise?

37 Java und XML... Java APIs for XML Messaging (JAXM) Grundidee: Austausch von XML-codierten Business Dokumenten (z.b. Bestellungen, Rechnungen oder Auftragsbestätigungen) Definiert keine neuen XML-Vokabulare für den Anwendungsbereich Entwickelt in Abstimmung mit ähnlichen Aktivitäten des W3C, ebxml (Transport/Packaging & Routing) Transport über (Internet-)Standardprotokolle wie HTTP(S) oder SMTP Explizite Berücksichtung der SOAP v1.1-spezifikation Applikation 1 JAXM-Service JAXM-API SOAP JAXM Verfügbar: JSR, Spezifikation v0.92 (Juni 2001) M. Jeckle XML und Java -- wohin geht die Reise?

38 Java und XML... Java APIs for XML RPC (JAXRPC) Grundidee: Übertragung von entfernten Methodenaufrufen mittels XML Überlappung mit SOAP/XMLP; jedoch koordiniert mit W3C-Aktivitäten hierzu APIs definieren stubs und skelettons zur Erzeugung der notwendigen XML-Dokumente auf Seiten des Aufrufers bzw. Aufgerufenen API zur Vermittlung der XML-RPCs an Java-Objekte Verbindung zu JAXB (XML Serialisierung von Java-Objekten) Verfügbar: JSR M. Jeckle XML und Java -- wohin geht die Reise?

39 Java und XML... Java API for XML Registries (JAXR) Grundidee: API zum Zugriff auf Dienstverzeichnisse Analog zu Java Naming and Directory Interface (JDNI), jedoch speziell für Bedürfnisse von Web-Services zugeschnitten Standard-API zum Zugriff auf: eco Framework, ebxml, UDDI Definiert keinen neuen eigenen Verzeichnisdienst Service Discovery Service Descriptions Inter-Application Transport Application Layer Presentation Layer Session Layer Transport Layer ADS, DISCO, UDDI, UDDI, WSDL SOAP / W3C s XML Protocols... XML-Languages CORBA, HTTP,RMI, SMTP, WSP TCP, WTP, UDP Bestandteil von J2EE Network Layer Data Link Layer IP, X.25, IPX HDLC, SLIP, PPP, Ethernet, IEEE 802.x Verfügbar: JSR; (public draft für Q zu erwarten) Physical Layer analogous Modem, V. 90, ISDN, ADSL M. Jeckle XML und Java -- wohin geht die Reise?

40 Java und XML... Java Architecture for XML Binding (JAXB) Grundidee: Verringerung des Impedance Mismatch zwischen Java und XML Technisch: Generierung von Java-Klassendefinitionen aus Grammatik (Document Type Definitions oder XML Schema) und einer Abbildungsdefinition DTD/ XSD binding schema Schema Compiler Java-Quellcode Java Compiler Java-Bytecode JAXB v1.0 ist (vermutlich) Bestandteil von J2SE v1.4 Verfügbar: JSR, early acces v1.0 Implementierung (Mai 2001) M. Jeckle XML und Java -- wohin geht die Reise?

41 Ressourcen W3C: SUN: Java XML Apache: Diese Vortrag und weiterführende Informationen zum Thema: M. Jeckle XML und Java -- wohin geht die Reise?

42 Ressourcen Java Community Process (JCP): (Merlin JSR) Java Architecture for XML Binding (ehemals Projekt Adelard) (JAXB) Java API for XML Processing v1.1 (JAXP) Version 1.0: Version 1.1: Java API for XML Messaging v1.0 (JAXM) Java API for XML Registries v1.0 (JAXR) Java APIs for XML RPC(JAXRPC) M. Jeckle XML und Java -- wohin geht die Reise?

43 Ressourcen SAX-Parser für Java: (Ælfred) (JAXP) (XML4J) (XP) (Xerces) DOM-Parser für Java: (JAXP) (XML4J) (Xerces) M. Jeckle XML und Java -- wohin geht die Reise?

44 Ressourcen Java Serialization to XML (JSX): JDOM v1.0: DOM4J: Electric XML: Java XML SUN: JavaML: M. Jeckle XML und Java -- wohin geht die Reise?

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

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

Mehr

XML und Java -- wohin geht die Reise?

XML und Java -- wohin geht die Reise? XML und Java -- wohin geht die Reise? Mario Jeckle DaimlerChrysler Forschungszentrum Ulm mario.jeckle@daimlerchrysler.com mario@jeckle.de www.jeckle.de Gliederung I XML und Programmiersprachen... Was ist

Mehr

Programmieren II SAX. Beispiel-Schema kontakt.xsd SAX DOM. Dr. Klaus Höppner JAXB. Hochschule Darmstadt SS 2008

Programmieren II SAX. Beispiel-Schema kontakt.xsd SAX DOM. Dr. Klaus Höppner JAXB. Hochschule Darmstadt SS 2008 Programmieren II SAX Dr. Klaus Höppner DOM Hochschule Darmstadt SS 2008 JAXB 1 / 21 2 / 21 SAX SAX (Simple API for XML) ist eine ereignisorientierte Methode zum Parsen von XML-Dateien. Dies bedeutet, das

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

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

Programmieren II. Einführung in XML. Vorlesung 13. Handout S. 1. Dr. Klaus Höppner. Hochschule Darmstadt Sommersemester 2010 XML JAXP SAX DOM

Programmieren II. Einführung in XML. Vorlesung 13. Handout S. 1. Dr. Klaus Höppner. Hochschule Darmstadt Sommersemester 2010 XML JAXP SAX DOM Programmieren II Dr. Klaus Höppner Hochschule Darmstadt Sommersemester 2010 1 / 26 XML JAXP SAX DOM 2 / 26 Einführung in XML XML ist eine Auszeichnungssprache zur strukturellen Beschreibung von Dokumenten.

Mehr

5. Programmierschnittstellen für XML

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

Mehr

Die besondere Rolle von XML im EAI. Mario Jeckle DaimlerChrysler Forschungszentrum Ulm mario.jeckle@daimlerchrysler.com mario@jeckle.de www.jeckle.

Die besondere Rolle von XML im EAI. Mario Jeckle DaimlerChrysler Forschungszentrum Ulm mario.jeckle@daimlerchrysler.com mario@jeckle.de www.jeckle. Die besondere Rolle von XML im EAI Mario Jeckle DaimlerChrysler Forschungszentrum Ulm mario.jeckle@daimlerchrysler.com mario@jeckle.de www.jeckle.de Gliederung I Enterprise Application Integration Begriffsbildung

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

5. Programmierschnittstellen für XML

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

Mehr

Der zukünftige SOAP-Standard des W3C

Der zukünftige SOAP-Standard des W3C Der zukünftige SOAP-Standard des W3C Mario Jeckle DaimlerChrysler Forschungszentrum Ulm mario.jeckle@daimlerchrysler.com mario@jeckle.de www.jeckle.de Gliederung I Herausforderung: Kommunikation in heterogenen

Mehr

Simple API for XML (SAX) Ulrich Hoffmann

Simple API for XML (SAX) Ulrich Hoffmann Simple API for XML (SAX) Ulrich Hoffmann 1 Simple API für XML (SAX) Ereignisbasierte Verarbeitung von XML Programmiersprachunabhängig: Implementierungen in Java, C++, Python,

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

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

WebService-Architekturen

WebService-Architekturen WebService-Architekturen W12 Mario Jeckle mario.jeckle jeckle@daimlerchrysler.comcom DaimlerChrysler Forschungszentrum Ulm Inhaltsübersicht WebService was ist das? Dienstanbieter (Service Provider) Dienstnachfrager

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

Definition Web Service

Definition Web Service Gliederung Einführung Definition Web Service Drei Schhichtenmodell Architectural Model System Model Web Service Standards SOAP WSDL UDDI Types of Web Services Programmatic Web Services Interactive Web

Mehr

Die extensible Markup Language Stand der Technik, Vokabulare und aktuelle Aktivitäten

Die extensible Markup Language Stand der Technik, Vokabulare und aktuelle Aktivitäten Die extensible Markup Language Stand der Technik, Vokabulare und aktuelle Aktivitäten Mario Jeckle DaimlerChrysler Forschungszentrum Ulm mario.jeckle@daimlerchrysler.com mario@jeckle.de www.jeckle.de Gliederung

Mehr

XML, Standards und andere Aktivitäten zur Formierung des Semantic Web

XML, Standards und andere Aktivitäten zur Formierung des Semantic Web XML, Standards und andere Aktivitäten zur Formierung des Semantic Web Mario Jeckle DaimlerChrysler Forschungszentrum Ulm mario.jeckle@daimlerchrysler.com mario@jeckle.de www.jeckle.de Organisation der

Mehr

XML Schema vs. Relax NG

XML Schema vs. Relax NG XML Schema vs. Relax NG p. 1/2 XML Schema vs. Relax NG Semistrukturierten Daten 1 Präsentation der Gruppe 2 XML Schema vs. Relax NG p. 2/2 Wozu XML Schema? W3C Empfehlung zur Definition von XML-Dokumentstrukturen

Mehr

Verarbeitung von XML mit SAX und DOM

Verarbeitung von XML mit SAX und DOM Verarbeitung von XML mit SAX und DOM Sven Peters Seminar Dokumentenverarbeitung Typeset by FoilTEX Urspünglich nur für Java SAX Simple Api for XML Peter Murray-Rust (Jumbo XML Browser) - YAXPAPI (Yet Another

Mehr

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 2. 12. 2013 Kennnr. Matrikelnr. Familienname Vorname

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 2. 12. 2013 Kennnr. Matrikelnr. Familienname Vorname Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 2. 12. 2013 Kennnr. Matrikelnr. Familienname Vorname Arbeitszeit: 100 Minuten. Aufgaben sind auf den Angabeblättern zu lösen; Zusatzblätter werden nicht

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

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

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

XML Grundlagen. Andreas Rottmann,Sebastian Riedl. 27. August 2002. Quit Full Screen Previous Page Next Page GoTo Page Go Forward Go Back

XML Grundlagen. Andreas Rottmann,Sebastian Riedl. 27. August 2002. Quit Full Screen Previous Page Next Page GoTo Page Go Forward Go Back XML Grundlagen Andreas Rottmann,Sebastian Riedl 27. August 2002 Rottmann, Riedl: XML Grundlagen 1 Überblick Hintergründe und Geschichte Aufbau von XML-Dokumenten DTD Schemata Erweiterungen XML APIs Rottmann,

Mehr

Softwaretechnik 2 - XML -

Softwaretechnik 2 - XML - Softwaretechnik 2 - XML - Wirtschaftsinformatik 20.07.10 Thomas Perschke Inhalt XML Überblick: Java-API für XML JAXP Heute: SAX Ausblick: DOM Beispielszenario XSL Was ist XML? XML (Extensible Markup Language)

Mehr

Implementierung von Web Services: Teil I: Einleitung / SOAP

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

Mehr

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 7. 1. 2014 Kennnr. Matrikelnr. Familienname Vorname

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 7. 1. 2014 Kennnr. Matrikelnr. Familienname Vorname Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 7. 1. 2014 Kennnr. Matrikelnr. Familienname Vorname Arbeitszeit: 100 Minuten. Aufgaben sind auf den Angabeblättern zu lösen; Zusatzblätter werden nicht

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

Die Programmiersprache Java. Dr. Wolfgang Süß Thorsten Schlachter

Die Programmiersprache Java. Dr. Wolfgang Süß Thorsten Schlachter Die Programmiersprache Java Dr. Wolfgang Süß Thorsten Schlachter Eigenschaften von Java Java ist eine von der Firma Sun Microsystems entwickelte objektorientierte Programmiersprache. Java ist......a simple,

Mehr

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 25. 10. 2013 Kennnr. Matrikelnr. Familienname Vorname

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 25. 10. 2013 Kennnr. Matrikelnr. Familienname Vorname Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 25. 10. 2013 Kennnr. Matrikelnr. Familienname Vorname Arbeitszeit: 100 Minuten. Aufgaben sind auf den Angabeblättern zu lösen; Zusatzblätter werden

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

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

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

XML-Programmierschnittstellen: SAX, DOM

XML-Programmierschnittstellen: SAX, DOM XML-Programmiershnittstellen: SAX, DOM SAX: The Simple API for XML Event-Based Doument Objet Model (DOM) Baumdarstellung APIs zum Parsen, Bearbeiten und Serialisieren von XML-Dokumenten. (Weitgehend) sprahunabhängig

Mehr

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 181.135 21. 01. 2011 Kennnr. Matrikelnr. Familienname Vorname

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 181.135 21. 01. 2011 Kennnr. Matrikelnr. Familienname Vorname Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 181.135 21. 01. 2011 Kennnr. Matrikelnr. Familienname Vorname Arbeitszeit: 120 Minuten. Aufgaben sind auf den Angabeblättern zu lösen; Zusatzblätter werden

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

Architektur von SOAP basierten Web Services

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

Mehr

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

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

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

XML und Web Services. Mario Jeckle DaimlerChrysler Forschungszentrum Ulm mario.jeckle@daimlerchrysler.com mario@jeckle.de www.jeckle.

XML und Web Services. Mario Jeckle DaimlerChrysler Forschungszentrum Ulm mario.jeckle@daimlerchrysler.com mario@jeckle.de www.jeckle. XML und s Mario Jeckle DaimlerChrysler Forschungszentrum Ulm mario.jeckle@daimlerchrysler.com mario@jeckle.de www.jeckle.de Gliederung I. XML Herkunft und Hintergrund Die evolution Wo stehen wir heute?

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

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

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

Web (Site) Engineering (WebSE)

Web (Site) Engineering (WebSE) 1 / 22 Web (Site) Engineering (WebSE) Vorlesung 6: Tools und Programmierung B. Schiemann, P. Reiß Lehrstuhl für Informatik 8 Universität Erlangen-Nürnberg 29.11.2005 2 / 22 Übersicht XML-Beispiel Zugriff

Mehr

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

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

Mehr

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

1 Software Engineering 1

1 Software Engineering 1 1 Software Engineering 1 XML 1.1 XML Extensible Markup Language Auszeichnungssprache zur Darstellung hierarchisch strukturierter Daten in Form von Textdaten Wird für den Datenaustausch/Speicherung benutzt

Mehr

Java: Kapitel 9. Java und XML. Programmentwicklung WS 2008/2009. Holger Röder holger.roeder@informatik.uni-stuttgart.de.

Java: Kapitel 9. Java und XML. Programmentwicklung WS 2008/2009. Holger Röder holger.roeder@informatik.uni-stuttgart.de. Java: Kapitel 9 Java und XML Programmentwicklung WS 2008/2009 Holger Röder holger.roeder@informatik.uni-stuttgart.de Überblick über Kapitel 9 Einführung in XML XML-Verarbeitung in Java Document Object

Mehr

X-Technologien. Ein Überblick. Ulrike Henny. ulrike.henny@uni-koeln.de. IDE Summer School 2013, Chemnitz

X-Technologien. Ein Überblick. Ulrike Henny. ulrike.henny@uni-koeln.de. IDE Summer School 2013, Chemnitz X-Technologien Ein Überblick Ulrike Henny ulrike.henny@uni-koeln.de X-Technologien Das X-Universum XML im Zentrum Woher kommt XML? Einsatz von XML X-Technologien Datenhaltung Datenzugriff Umwandlung Ausgabe

Mehr

Programmieren II. Annotationen (1/3) Vorlesung 6. Handout S. 1. Martin Schultheiß. Hochschule Darmstadt Sommersemester Annotationen XML JAXB

Programmieren II. Annotationen (1/3) Vorlesung 6. Handout S. 1. Martin Schultheiß. Hochschule Darmstadt Sommersemester Annotationen XML JAXB Programmieren II Martin Schultheiß Hochschule Darmstadt Sommersemester 2011 1 / 34 Annotationen XML JAXB JAXP SAX DOM 2 / 34 Annotationen (1/3) Annoataionen sind Sprachelemente, durch welche Metadaten

Mehr

Programmieren II. Annotationen (1/3) Vorlesung 6. Handout S. 1. Martin Schultheiß. Hochschule Darmstadt Sommersemester Annotationen XML JAXB

Programmieren II. Annotationen (1/3) Vorlesung 6. Handout S. 1. Martin Schultheiß. Hochschule Darmstadt Sommersemester Annotationen XML JAXB Programmieren II Martin Schultheiß Hochschule Darmstadt Sommersemester 2012 1 / 34 Annotationen XML JAXB JAXP SAX DOM 2 / 34 Annotationen (1/3) Annoataionen sind Sprachelemente, durch welche Metadaten

Mehr

epayment Leistungen des Bundes einfach, schnell und sicher bezahlen mit Payment Eine Idee mit Zukunft 17.05.2005 1

epayment Leistungen des Bundes einfach, schnell und sicher bezahlen mit Payment Eine Idee mit Zukunft 17.05.2005 1 epayment Leistungen des Bundes einfach, schnell und sicher bezahlen mit Payment Eine Idee mit Zukunft 17.05.2005 1 Übersicht Internet eshop n... Leistungen des Bundes Rechnung Lastschrift Einzelüberweisung

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

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

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

Was ist EMF? Wie wird EMF eingesetzt? Was ist ecore? Das Generatormodell Fazit

Was ist EMF? Wie wird EMF eingesetzt? Was ist ecore? Das Generatormodell Fazit Was ist EMF? Wie wird EMF eingesetzt? Was ist ecore? Das Generatormodell Fazit EMF ist ein eigenständiges Eclipse-Projekt (Eclipse Modeling Framework Project) EMF ist ein Modellierungsframework und Tool

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

Einführung in Java. PING e.v. Weiterbildung Andreas Rossbacher 24. März 2005

Einführung in Java. PING e.v. Weiterbildung Andreas Rossbacher 24. März 2005 Einführung in Java PING e.v. Weiterbildung Andreas Rossbacher 24. März 2005 Gliederung 1. Was ist Java / Geschichte von Java 2. Prinzip der Plattformunabhängigkeit 3. Wie kommt man vom Quellcode zum Programm

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

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

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

2004-2006, Rainer Schmidberger, ISTE. XML und Java. Rainer Schmidberger Rainer.Schmidberger@informatik.uni-stuttgart.de

2004-2006, Rainer Schmidberger, ISTE. XML und Java. Rainer Schmidberger Rainer.Schmidberger@informatik.uni-stuttgart.de XML und Java Rainer Schmidberger Rainer.Schmidberger@informatik.uni-stuttgart.de Was ist XML? Müller Hans Ulmenweg 22 70565

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

Java Web Services Metadata JSR-181

Java Web Services Metadata JSR-181 Java Web Services Metadata JSR-181 Dieses Dokument ist ein Auszug aus unserem Skript zur Java Web Services Schulung. Es dient lediglich als Beispiel für unsere Kursunterlagen. Thomas Bayer Albertus-Magnus-Str.

Mehr

Seminar: XML und Datenbanken

Seminar: XML und Datenbanken Seminar: XML und Datenbanken XML-Verarbeitungsmodelle und Language Bindings Christian Müller 24.01.2003 Übersicht 1 Einleitung 2 Simple API for XML (SAX) 3 Document Object Model (DOM) 4 JDOM 5 Java API

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

ist mein ebusiness skalierbar und verfügbar?

ist mein ebusiness skalierbar und verfügbar? 12-1 ist mein ebusiness skalierbar und verfügbar? Datenbank HTML client HTTP Internet HTTP Web Application Server Web Server Anforderungen: - Verfügbarkeit - Skalierbarkeit - Performance - Sicherheit HTML

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

ObjectBridge Java Edition

ObjectBridge Java Edition ObjectBridge Java Edition Als Bestandteil von SCORE Integration Suite stellt ObjectBridge Java Edition eine Verbindung von einem objektorientierten Java-Client zu einer fast beliebigen Server-Komponente

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

Autor: Peter Seemann Seminar: Softwarearchitekturen Betreuer: Benedikt Meurer

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

Mehr

Übersicht. Web (Site) Engineering (WebSE) XML-Beispieldokument. Simple API for XML (SAX) [Pro] XML-Beispiel. Vorlesung 6: Tools und Programmierung

Übersicht. Web (Site) Engineering (WebSE) XML-Beispieldokument. Simple API for XML (SAX) [Pro] XML-Beispiel. Vorlesung 6: Tools und Programmierung Übersicht Web (Site) Engineering (WebSE) Vorlesung 6: Tools und Programmierung XML-Beispiel B. Schiemann, P. Reiß Lehrstuhl für Informatik 8 Universität Erlangen-Nürnberg 29.11.2005 Zugriff auf Inhalt,

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

Web-Konzepte für das Internet der Dinge Ein Überblick

Web-Konzepte für das Internet der Dinge Ein Überblick Web-Konzepte für das Internet der Dinge Ein Überblick Samuel Wieland sawielan@student.ethz.ch ETH Zürich Seminar Das Internet der Dinge Historisches Tim Berners-Lee Erster Web-Server Bildquelle: Wikimedia

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

SOAP Simple Object Access Protocol

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

Mehr

Das erste Programm soll einen Text zum Bildschirm schicken. Es kann mit jedem beliebigen Texteditor erstellt werden.

Das erste Programm soll einen Text zum Bildschirm schicken. Es kann mit jedem beliebigen Texteditor erstellt werden. Einfache Ein- und Ausgabe mit Java 1. Hallo-Welt! Das erste Programm soll einen Text zum Bildschirm schicken. Es kann mit jedem beliebigen Texteditor erstellt werden. /** Die Klasse hello sendet einen

Mehr

Institut für Dokumentologie und Editorik. XML-Datenbanken und XQuery

Institut für Dokumentologie und Editorik. XML-Datenbanken und XQuery XML-Datenbanken & XQuery Folie 1 XML Digitale Edition XSL-FO XSLT XQuery XML-DB Folie 2 Programm - Ausgewählte Biere verköstigen - Brauereibesichtigung - Anwendung der Hefe erlernen - brauen Folie 3 Telota

Mehr

Beispiel einer Web-Service gestützten Systematischen Suche in den Beständen des Stadtgeschichtlichen Museums Leipzig

Beispiel einer Web-Service gestützten Systematischen Suche in den Beständen des Stadtgeschichtlichen Museums Leipzig Beispiel einer Web-Service gestützten Systematischen Suche in den Beständen des Stadtgeschichtlichen Museums Leipzig Gliederung Neues von museumvok und der Definition eines darauf basierenden WEB Services

Mehr

E-Services mit der Web-Service-Architektur

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

Mehr

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN Kennnr. Matrikelnr. Familienname Vorname

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN Kennnr. Matrikelnr. Familienname Vorname Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 24. 10. 2014 Kennnr. Matrikelnr. Familienname Vorname Arbeitszeit: 100 Minuten. Aufgaben sind auf den Angabeblättern zu lösen; Zusatzblätter werden

Mehr

Dataport IT Bildungs- und Beratungszentrum. HTML- Grundlagen und CSS... 2. XML Programmierung - Grundlagen... 3. PHP Programmierung - Grundlagen...

Dataport IT Bildungs- und Beratungszentrum. HTML- Grundlagen und CSS... 2. XML Programmierung - Grundlagen... 3. PHP Programmierung - Grundlagen... Inhalt HTML- Grundlagen und CSS... 2 XML Programmierung - Grundlagen... 3 PHP Programmierung - Grundlagen... 4 Java - Grundlagen... 5 Java Aufbau... 6 ASP.NET Programmierung - Grundlagen... 7 1 HTML- Grundlagen

Mehr

Ferhat Ayaz. XML mit C++

Ferhat Ayaz. XML mit C++ Ferhat Ayaz XML mit C++ Inhaltsverzeichnis Einleitung 11 Teil I XML-Grundlagen 15 i XML im Schnellkurs 17 I.I WasistXML? 18 1.2 Was ist XML nicht? 18 1.3 Der Aufbau eines XML-Dokuments 19 1.4 XML-Deklaration

Mehr

Ruhr.pm XML-Daten verarbeiten mit XML::LibXML Autor: EMail: Datum: http://ruhr.pm.org/

Ruhr.pm XML-Daten verarbeiten mit XML::LibXML Autor: EMail: Datum: http://ruhr.pm.org/ XML-Daten verarbeiten mit XML::LibXML Autor: EMail: Datum: Simon Wilper simon AT ruhr.pm.org http://ruhr.pm.org/ Template Version 0.1 The use of a camel image in association with Perl is a trademark of

Mehr

1 ZUR EINSTIMMUNG............................................ 13 1.1 AUFBAU DES BUCHES.......................................... 13 1.2 VORAUSSETZUNGEN FÜR DIESES BUCH.............................. 14

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

XML-basierte Standards für den Datenaustausch in der Logistikkette

XML-basierte Standards für den Datenaustausch in der Logistikkette XML und Electronic Data Interchange (EDI) EDIFACT-XML ein kleines Beispiel - Strukturierung von Daten Datensatz 347,M50,L Datensatz mit Pseudocode-ML strukturiert 347

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

XML-Frameworks in verschiedenen Programmiersprachen Proseminar Textkodierung und Auszeichnung

XML-Frameworks in verschiedenen Programmiersprachen Proseminar Textkodierung und Auszeichnung XML-Frameworks in verschiedenen Programmiersprachen Proseminar Textkodierung und Auszeichnung Matthias Bethke bethke@linguistik.uni-erlangen.de Linguistische Informatik Universität Erlangen-Nürnberg Sommersemester

Mehr

1. Einführung. Gliederung. Document Object Model (DOM) DOM Die Spezifikation (1) Level 2 HTML Specification. 1. Einführung. 2.

1. Einführung. Gliederung. Document Object Model (DOM) DOM Die Spezifikation (1) Level 2 HTML Specification. 1. Einführung. 2. Gliederung Document Object Model (DOM) Level 2 HTML Specification 1. Einführung Spezifikation 2. DOM Module Levels, Core, Überblick 3. DOM Intern Funktionsweise, Parser 4. DOM Level 2 HTML Eigenschaften,

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

Asynchrone Webservices mit Axis 1.x in Java

Asynchrone Webservices mit Axis 1.x in Java Asynchrone Webservices mit Axis 1.x in Java 1. Übersicht Architektur Da Webservices nach relativ kurzen Timeouts Anfragen abgearbeitet haben müsse, sind komplexe Anfragen wie sie in der Bioinformatik üblich

Mehr

Dirk Ammelburger XML. Grundlagen der Sprache und Anwendungen in der Praxis HANSER

Dirk Ammelburger XML. Grundlagen der Sprache und Anwendungen in der Praxis HANSER Dirk Ammelburger XML Grundlagen der Sprache und Anwendungen in der Praxis HANSER r 1 Einleitung 2 1.1 Über dieses Buch 3 1.2 Für wen ist das Buch gedacht? 4 1.3 Wie ist das Buch aufgebaut? 5 1.4 Konventionen

Mehr

Webservices Ein Vortrag von:

Webservices Ein Vortrag von: Webservices Ein Vortrag von: Andreas Münstermann Michael Reiher Markus Buschky Gliederung Einführung in Webservices Technische Grundlagen SOAP UDDI WSDL Sicherheitskonzepte Blick in die Zukunft Einführung

Mehr

Sicherung von Web Services durch Firewalls

Sicherung von Web Services durch Firewalls Sicherung von Web Services durch Firewalls Mario Jeckle, Barbara Zengler DaimlerChrysler Forschungszentrum Ulm {mario.jeckle, barbara.zengler}@daimlerchrysler.com www.jeckle.de Gliederung Kommunikation

Mehr

Prinzipien Objektorientierter Programmierung

Prinzipien Objektorientierter Programmierung Prinzipien Objektorientierter Programmierung Valerian Wintner Inhaltsverzeichnis 1 Vorwort 1 2 Kapselung 1 3 Polymorphie 2 3.1 Dynamische Polymorphie...................... 2 3.2 Statische Polymorphie........................

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