Java und XML Seminarbeitrag von Ralph-Peter Noll 22. Januar 2001.

Slides:



Advertisements
Ähnliche Präsentationen
SOAP, nur ein neuer XML- Dialekt?
Advertisements

Hauptseminar Softwaretechnologie TU Dresden, SS 2001
Basis-Architekturen für Web-Anwendungen
XML.
Anmerkungen zu XML Im September 2000 Entwicklung/Anspruch von XML
SOAP Simple Object Access Protocol
Datenbankzugriff im WWW (Kommerzielle Systeme)
Seminar: XML für Fortgeschrittene Referent: Katrin Apel
Stefanie Selzer - Pascal Busch - Michael Kropiwoda
Web Services und Workflow-Steuerung
XML - Aufbau und Struktur - mit Einsatz im B2B
IMS Universität Stuttgart 1 Einführung in XML Hannah Kermes HS: Elektronische Wörterbücher Do,
FH-Hof Einbindung von JavaScript Anweisungen
DOM (Document Object Model)
Web 3.0 – Programmierung – Semantic Web / CIDOC CRM
XML-Schema HKI Proseminar Wintersemester 2010/11 Dozentin: Frau Kurz von Jan Kohl und Christian Lütticke.
© 2002 Prof. Dr. G. Hellberg 1 XML-Seminar XML-Technologie: XML in Theorie und Praxis Prof. Dr. G. Hellberg XML-Technologie: XML in Theorie und Praxis.
XML in Datenbanksystemen. © Prof. T. Kudraß, HTWK Leipzig 2 2 Warum wird XML eingesetzt? Antworten von Unternehmen: erweiterte Suchmöglichkeiten im Unternehmen.
Einführung XML XML Einführung Andreas Leicht.
Introducing the .NET Framework
© data2type 2005, 1 Publishing mit XML Einsatz von XSL für das multimediale, automatisierte Publishing.
Tobias Högel & Dennis Böck,
Seite Common Gateway Interface. Konzepte. Übersicht 1Einleitung 2Was ist CGI? 3Wozu wird CGI verwendet? 4Geschichtlicher Überblick 5Grundvoraussetzungen.
1 Grundlagen und Anwendung der Extensible Markup Language (XML ) Peter Buxmann Institut für Wirtschaftsinformatik Johann Wolfgang Goethe-Universität Frankfurt.
FH-Hof 1 XML-Parser Richard Göbel. FH-Hof 2 XML-Parser- DOM Object Tree Parser Objekt der Klasse 'DocumentBuilderFactory' mit 'newInstance()' erzeugen.
Die .NET Common Language Runtime
Die .NET Common Language Runtime
ArcGIS als WPS Server Aktueller Stand der Umsetzung
Integration heterogener verteilter Systeme mit WS-BPEL – ein Praxisbeispiel Dr. Wolf-Dieter Heinrichs.
Webservice Grundlagen
Einsatzgebiete und Anwendungen
Consulting and Solutions.NET Vortragsreihe – Vorstellung der Referenten Happy Arts Software Markus Kämmerer IT-Erfahrung seit 1987,
Proseminar: „Webtechnologien für Ecommerce“
Java für Fortgeschrittene
Sesame Florian Mayrhuber
XML-Serverpages Vortrag im Rahmen des Seminars XML-Technologien Tobias Faessler.
Übersicht Was ist cocoon? Separation of Concerns Pipeline Modell
Ausgabe vom Seite 1, XML Eine Einführung XML - Eine Einführung.
Java Server Pages Sergej Keterling
Management- und Web Services- Architekturen
Oliver Spritzendorfer Thomas Fekete
XML und Datenbanken © 2006 Markus Röder
XML (Extensible Markup Language)
Web 2.0 & AJAX (A)sysnchrones (J)avaScript (A)nd (X)ML
XSL in der Praxis Anwendungsbeispiele für die eXtensible Stylesheet Language Andreas Kühne XML One 2000.
Drucken mit XSL-FO DaimlerChrysler  Drucken von Webseiten
Reinhold Rumberger Web Services.
© 2001 Sven Dammann1 Aufbau Integrierter Informationssysteme XML Bearbeitung und relationale Abbildung Sven Dammann Martin-Luther-Universität Halle-Wittenberg.
SOAP.
prof. dr. dieter steinmannfachhochschule trier © prof. dr. dieter steinmann Folie 1 vom Montag, 30. März 2015.
Microsoft.NET InfoPoint 8. Juni 2005 Stefan Bühler.
Bern University of Applied Sciences Engineering and Information Technology Documentation generator for XML-based description standards Ausgangslage: Die.
IT-Zertifikat der Phil.Fak Kurs 4: Daten- und Metadatenstandards Patrick Sahle XML-BasicsWS 08/09.
XML Die “E-Lance Economy” oder die “Digital Economy” stellt neue Anforderungen an Funktionalität im Netz. XML wurde vom World Wide Web Consortium (W3C)
Seminar zur Geoinformation Folie 1 Inhalt: –XML –XML- SCHEMA –XSL –Syntax –GML Seminar zur Geoinformation Datenaustausch mit XML / GML im InternetDatenaustausch.
Vorteile von XML Die installed base von HTML, HTTP und Webbrowsern XML ist einfach und portabel XML kann Dokumente beliebiger Komplexität abbilden XML.
Text Encoding Initiative Universität zu Köln Daten- und Metadatenstandards Seminarleitung: Patrick Sahle Seminarleitung: Patrick Sahle Referentin: Anna.
Stefan Metzlaff1 Cocoon Stefan Metzlaff
Seminar Modellgetriebene Softwareentwicklung XMI - XML Metadata Interchange Vortrag im Rahmen des Seminar Modellgetriebene Softwareentwicklung Mirko Otto.
Vorteile von XML Die installed base von HTML, HTTP und Webbrowsern XML ist einfach und portabel XML kann Dokumente beliebiger Komplexität abbilden XML.
ORB – Konzepte Ist – Analyse der betrieblichen Notwendigkeiten, Anforderungsableitung an moderne Lösungskonzepte, alternative ORB – Konzepte mit Zukunft,
1 Java und XML Stephan Baldes Warum XML? In welchem Format wurden die Daten gespeichert? Bernd;Thomas;3;5;1987;Freiburg;Karlsruhe Peter;Maier;7;9;1980;Karlsruhe;Freiburg.
, Claudia Böhm robotron*SAB Anwendungsentwicklung mit dem Java und XML basierten Framework robotron*eXForms Simple Application Builder.
Patrick Richterich Lattwein GmbH Web Services Softwareentwicklung mit SOAP.
Vergleich verschiedener Kommunikationsinfrastrukturen in Enterprise Information Systems Ben Mainz Seminar am Lehrstuhl für Software Engineering RWTH Aachen.
WebServices Vortrag zur Diplomarbeit WebServices Analyse und Einsatz von Thomas Graf FH Regensburg
SOAP - WSDL Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung Prof. Dr. Manfred Thaller AM 2 Hauptseminar: Virtuelle.
Jakarta Struts Quasi-Standard für JSP-basierte Entwicklung: Jakarta Struts Key Features von Struts: Implementierung des Action-Command-Pattern („Model.
 Präsentation transkript:

Java und XML Seminarbeitrag von Ralph-Peter Noll 22. Januar 2001

Gliederung z1. Grundlagen XML und Java z2. Parsing in Java z3. Transformationen z4. Datenaustausch z5. Tools

1. Grundlagen zXML (Extensible Markup Language) ? yRegelsystem zur Definition von HTML- ähnlichen, formal verifizierbaren Syntaxen für jede Art von strukturierten Daten zJava ? yOO-Sprache, setzt in akzeptabler Weise folgende Ansprüche um: einfach, objektorientiert, robust, sicher, portabel, performant (...)

XML in 7 Punkten zXML ist ein Verfahren, strukturierte Daten in Textdokumente zu verpacken. zXML sieht zwar aus wie HTML, ist aber anders. zXML ist Text, wird aber normalerweise nicht von Menschen gelesen. zXML umfaßt eine ganze Sammlung von Technologien. zXML ist ausführlich, aber das ist kein Problem. zXML ist neu, aber nicht zu neu. zXML ist kostenlos, plattformunabhängig und weit verbreitet.

XML Beispiel Bob Anvil

Java zObjektorientierte Sprache zC/C++ Syntax unter Verzicht auf fehlerträchtige Merkmale zinterpretiert (ggf. dynamisch optimiert) zplattformunabhängig zmodern: netzwerk-/weborientiert, multithreaded, enthält Sicherheitsmechanismen

Häufigste Anwendungen der Kombination zKonverter XML nach XML, HTML, PDF... zXML zum Datenaustausch (Stichwort eCommerce, B2B) zDatenpersistenz mit XML (neue einfache Dateiformate)

Vorteile der Kombination XML- Java zPortabilität, Allgemeinheit zStandardisierte Programmier-Interfaces mit austauschbaren Implementationen zNetzwerkorientierung ystandardisierter Datenaustausch mit anderer Software yleichte Erweiterbarkeit um Web-Interface zSuns XML-Tools als neuer Bestandteil der Java Plattform weit verbreitet

2. Parsing zSAX - Ereignisgesteuertes Parsen zDOM - Dokument-Baum, sprach-unabhängig zJAXP - SAX + DOM + Ergänzungen zJDOM - DOM erweitert, für Java optimiert

SAX (Simple API for XML) zEreignisgesteuerter Ansatz: yParser liest sequentiell den Eingabestrom yPrüfung auf Korrektheit der Eingabe yAufruf von Callback-Methoden bei bestimmten Ereignissen zZiel der Standardisierung solcher Parser: yAustauschbarkeit der Parser ygeringe Lernerfordernisse, Wissenstransfer

SAX Interfaces zParser zDocumentHandler zAttributeList zErrorHandler zLocator zDTDHandler zEntityResolver

SAX Version 2 Neuerungen zUnterstützung von Namespaces. zFilterung zerweiterte Parsersteuerung

Diskussion von SAX zVorteile: yeinfach, effizient bzgl. Speicher und Rechenzeit ygeeignet für große Datenmengen ygeringer Overhead bei Verarbeitung eines geringen Anteils der Daten zNachteile: ykein Mechanismus zum Schreiben von XML spezifiziert

DOM (Document Object Model) zAnsatz: yErstellung eines baumförmigen Modells der Dokumentstruktur (XML oder HTML) yAuswertung und Manipulation dieser Struktur über Methoden der Objekte im Baum ySammlung von Klassen (Interfaces), die im Baum verwendet werden

DOM Interfaces zNode (mit Name, Typ, Wert, Kontext im Baum) zDocument zElement zAttribute zCharacterData zEntity, EntityReference zHilfsklassen

Diskussion von DOM zVorteile: yeinheitlicher Zugriff in verschiedenen Sprachen ygezielter und schneller Zugriff ygeringerer Programmieraufwand als bei SAX ybesser geegnet zur Generierung dynamischen Inhalts

Diskussion von DOM (2) zNachteile: ySchreiben von XML nicht enthalten yautomatisches Durchschreiten des Baumes nicht enthalten yin Corba-IDL spezifiziert, Java-API ausgeschlossen ykonsequente Baumorientierung umständlich yzunächst hoher Overhead für Baumerstellung

DOM Level 2 Neuerungen zStylesheets zViews zRange zTraversal zEvents zDetailverbesserungen, z.B. bessere Suchfunktionen

JAXP (Java API for XML Parsing) zKomplettlösung für die meisten Java-XML- Projekte zKomponenten: yParser (namentlich SAX 1.0) yObjektmodell (DOM Level 1) yeinheitliche Schnittstellen zur Erzeugung von Objekten (Factories) zJAXP 1.1 mit XSL, SAX 2 und DOM 2 available soon

JDOM (Java Document-Object Model) zZiel: kompaktes API, das nur die Stärken von SAX und DOM vereint zkann auch auf vorhandenen SAX und DOM Parsern aufsetzen zAusgabe von XML möglich

3. Transformation als Anwendung zhäufige Anwendung: on-the-fly Generierung von Webseiten zProbleme: yEffizienz yZielformate (HTML-Versionen, XML etc...) ydynamische Inhalte

Transformation mit SAX und DOM zSAX yAusgabe während Scanner-Durchlauf, einfache Transformationen möglich zDOM yParsing, Aufbau eines Parsebaums yManipulation dieses Baums yrekursive Generierung anhand Dokumentstruktur

XSL (Extensible Stylesheet Language) zStylesheet-Sprache für XML, besteht aus yXSLT: Transformationsprache XML nach XML yXSL-FO: XML-Vokabular für Formatierungen zJava-Unterstützung yJAXP 1.1, diverse Tools

JSP und Java Servlets zAnsatz: Java Programm läuft im Server yServlet yJava-Programm aus JSP-Dokument generiert zIntegration in XML über Processing Instructions zDynamic Content Processing (DCP): yManipulationen auf DOM-Objekten vor der Transformation

4. Datenaustausch als Anwendung zBegriff Enterprise Application Integration (EAI) zBegriff Electronic Data Interchange (EDI) zSOAP und JAXM zXML-RPC

Begriffe EDI und EAI zEAI (Enterprise Application Integration) yAbstrakter betriebswirtschaftlicher Oberbegriff für betriebswirtschaftlich geprägte Vorgänge der Kopplung vorhandener Anwendungen und Integration in neuen Anwendungen zEDI (Electronic Data Interchange ) ySystem zur Festlegung von normierten Formaten für den Austausch von Daten zwischen kommerziellen Datenverarbeitungsprogrammen (Stichwort B2B) yzunehmend über das Internet

SOAP und JAXM (Simple Object Access Protocol, Java API for XML Messaging) zZiel: yAustausch strukturierter, typisierter Daten über Standardprotokolle wie HTTP, FTP, SMTP mittels einfacher Mechanismen. y Robustheit, schnelle Entwicklung zBestandteile des W3C Protokolls SOAP: yNachrichtenformat: Envelope, Header, Body in XML yKodierung / Serialisierung von Typen und Klassen yRPC Konventionen für remote Prozeduraufrufe zJAXP ist ein konkurrierender Standard von Sun mit stärkerer Ausrichtung auf eBusiness.

5. Tools zParser zXSLT-Prozessoren zsonstige Java-XML-Tools

Parser zApache XML Parser Xerces zIBM XML Parser XML4J zOracle XML parser zSun XML parser (s.o.) zXP - freier XML parser von James Clark

XSLT Prozessoren zApache XML Prozessor Xalan (Java und C++) zLotus LotusXSL, auf dem Xalan aufbaut zXT - freier XSLT-Prozessor von James Clark's zSun XSLT-to-Java Compiler

sonstige Java XML Tools zIBM XML + Web Services Entwicklungsumgebung zApache Cocoon und Xang - Framework zur Generierung dynamischer Webseiten aus XML mit Java und Javascript

6. Ausblick zJAXB (API for XML Data Binding): direktes Mapping von XML-Strukturen auf Java-Klassen yZiel: keine Parser mehr verwenden, sondern direkt XML-Schemata als Java-Klassen einbinden. yLetzter fehlender Baustein von Suns JAX (Java API for XML) bestehend aus JAXP, JAXM und JAXB