JBuilder 5 und XML. Inhalt. XML - Konfiguration von JBuilder. XML - Umwandlung und Validierung. Web - Publishing mit Cocoon



Ähnliche Dokumente
Downloadfehler in DEHSt-VPSMail. Workaround zum Umgang mit einem Downloadfehler

Metadateneditoren für ArcGIS

5. Programmierschnittstellen für XML

5. Programmierschnittstellen für XML

OP-LOG

ID VisitControl. Dokumentation Administration Equitania Software GmbH cmc Gruppe Seite 1

Erstellung von Reports mit Anwender-Dokumentation und System-Dokumentation in der ArtemiS SUITE (ab Version 5.0)

XML Werkzeug XML Spy. Frank Heininger Axel Labuschke

<script type="text/javascript"> <! <%= page(page.searchsuggestionsscript) %> // > </script>

Step by Step Softwareverteilung unter Novell. von Christian Bartl

Software Engineering. Zur Architektur der Applikation Data Repository. Franz-Josef Elmer, Universität Basel, HS 2015

Grundzüge und Vorteile von XML-Datenbanken am Beispiel der Oracle XML DB

Installation OMNIKEY 3121 USB

FIREBIRD BETRIEB DER SAFESCAN TA UND TA+ SOFTWARE AUF MEHR ALS EINEM COMPUTER

Medea3 Print-Client (m3_print)

Erstellen einer Collage. Zuerst ein leeres Dokument erzeugen, auf dem alle anderen Bilder zusammengefügt werden sollen (über [Datei] > [Neu])

XINDICE. The Apache XML Project Name: J acqueline Langhorst blackyuriko@hotmail.de

Nach der Installation des FolderShare-Satellits wird Ihr persönliches FolderShare -Konto erstellt.

User Manual Data 24. Login und Layout

Die Technologie der Mumie

ObjectBridge Java Edition

Dieses Tutorial gibt eine Übersicht der Form Klassen von Struts, welche Besonderheiten und Unterschiede diese aufweisen.

Lehrer: Einschreibemethoden

Hilfe zu XR PACS ImageproWeb. Inhalt. Windows Updates. IE11 und Windows 7/8

Anton Ochsenkühn. amac BUCH VERLAG. Ecxel für Mac. amac-buch Verlag

AutoCAD Dienstprogramm zur Lizenzübertragung

Adobe Encore Einfaches Erstellen einer DVD

Dokumentation zum Inco- FORM

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom b

TimeMachine. Time CGI. Version 1.5. Stand Dokument: time.odt. Berger EDV Service Tulbeckstr München

Neuerungen der Ck-Schnittstelle in dms.net Rev. 4895

a.sign Client Lotus Notes Konfiguration

Process4.biz Release Features Übersicht. Repository. Das Schützen von Diagrammen wurde optimiert (check-in, check-out)

... MathML XHTML RDF

Kommunikations-Parameter

Einführungskurs MOODLE Themen:

C O C O O N. Wo ist Cocoon in die Apache Projekte einzureihen?

Password Depot für ios

Internet Explorer Version 6

etutor Benutzerhandbuch XQuery Benutzerhandbuch Georg Nitsche

12. Dokumente Speichern und Drucken

HOSTED EXCHANGE MAIL FÜR MAC

Installation der Demoversion vom M-Doc AutoSigner

Vorgehensweise bei Lastschriftverfahren

Migration von statischen HTML Seiten

1. Zusammenfassung der letzten Vorlesung

MULTIWEB Banking. Installation und Update unter Windows

Advoware mit VPN Zugriff lokaler Server / PC auf externe Datenbank

RIS Abbild mit aktuellen Updates

Anleitung zur Installation und Verwendung von eclipseuml 2.1.0

Java und XML 2. Java und XML

Arbeiten mit Workflows Installationsleitfaden Zur Installation des d3 Workflows

MSXFORUM - Exchange Server 2003 > SMTP Konfiguration von Exchange 2003

Alfresco an der fhs. IUK - fhs - Martin Beier

Meldung der Waffennummern (Waffenkennzeichen) nach der Feuerwaffenverordnung der EU

Installations Guide für YAJSW und DTLDAP

ecaros2 - Accountmanager

CartCalc FAQ (frequently asked questions) häufige Fragen zu CartCalc

C A L D E R A G R A P H I C S. Wie geht das? Einrichten automatischer Druckprozesse

Screening for Illustrator. Benutzerhandbuch

Melde- und Veröffentlichungsplattform Portal (MVP Portal) Hochladen einer XML-Datei

ejgp Webseite Kurzeinführung

Dokumentation zur Versendung der Statistik Daten

Anbindung einer Gateprotect GPO 150

Folgende Voraussetzungen für die Konfiguration müssen erfüllt sein: - Ein Bootimage ab Version Optional einen DHCP Server.

White Paper. Konfiguration und Verwendung des Auditlogs Winter Release

teamsync Kurzanleitung

CMS.R. Bedienungsanleitung. Modul Cron. Copyright CMS.R Revision 1

Erstellen von x-y-diagrammen in OpenOffice.calc

Der transparente Look. Die Struktur, die oben angegeben wurde, ist im Anwendungsdesigner, wie in der nächsten Grafik ersichtlich, abgebildet.

ISA Server 2004 Erstellen einer Webverkettung (Proxy-Chain) - Von Marc Grote

GEONET Anleitung für Web-Autoren

Anleitung zur Erstellung von Serienbriefen (Word 2003) unter Berücksichtigung von Titeln (wie Dr., Dr. med. usw.)

s aus -Programm sichern Wählen Sie auf der "Startseite" die Option " s archivieren" und dann die entsprechende Anwendung aus.

Anleitung OpenCms. Einfügen eines Template-Umschalters für den Wechsel zwischen mobiler und Dektop-Ansicht

Anleitung zur Verwendung der VVW-Word-Vorlagen

ipad+nutzung%im%unterricht% %Bedienung%und%Methodik% % von!sarah!berner,!christine!frank!und!peter!kosak! Maria7Ward7Gymnasium!Augsburg!

DELFI. Benutzeranleitung Dateiversand für unsere Kunden. Grontmij GmbH. Postfach Bremen. Friedrich-Mißler-Straße Bremen

INSTALLATION DES SQL SERVER 2008r2 für rza fakt

Gemeinsamer Bibliotheksverbund: Übertragung von Datenexporten für den Verbundkatalog Öffentlicher Bibliotheken

Version: System: DFBnet Lizenz 5.20

BOKUbox. Zentraler Informatikdienst (ZID/BOKU-IT) Inhaltsverzeichnis

Titel. System Center Configuration Manager 2012 R2 Anleitung Installation Softwareupdatepunkt und WSUS Integration

Notizen. 1 Inhaltsverzeichnis 1 INHALTSVERZEICHNIS EINLEITUNG KONFIGURATIONSEINSTELLUNGEN VERTRAUENSWÜRDIGE SITES HINZUFÜGEN...

Einrichtung von Mozilla Thunderbird

Nikon Message Center

ShopwareAutoinvoice Installations- und Benutzeranleitung

Datenbanken auf Sybase SQL-Anywhere

Thomas Wagner 2009 (im Rahmen der TA) Installation von MySQL 5.0 und Tomcat 5.5

Die Beschreibung bezieht sich auf die Version Dreamweaver 4.0. In der Version MX ist die Sitedefinition leicht geändert worden.

Bedienungsanleitung Albumdesigner. Neues Projekt: Bestehendes Projekt öffnen:

IBM SPSS Statistics Version 22. Konfigurieren von Technologie für behindertengerechte Bedienung

1. EINLEITUNG 2. GLOBALE GRUPPEN Globale Gruppen anlegen

Anleitung zur Webservice Entwicklung unter Eclipse

Um ein solches Dokument zu erzeugen, muss eine Serienbriefvorlage in Word erstellt werden, das auf die von BüroWARE erstellte Datei zugreift.

Kurzanleitung zu XML2DB

WARY Notariat Urkundenrolle V2013

Mediator 9 - Lernprogramm

Windows 98 / Windows NT mit NCP WAN Miniport-Treiber 23. Oktober 1998

1. Adressen für den Serienversand (Briefe Katalogdruck Werbung/Anfrage ) auswählen. Die Auswahl kann gespeichert werden.

Transkript:

JBuilder 5 und XML Michael Schmut Thomas Forster schmut@oio.de Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim www.oio.de 1 Inhalt XML - Konfiguration von JBuilder XML - Umwandlung und Validierung Web - Publishing mit Cocoon XML - Databinding mit Castor und BorlandXML XML - Datenbankkomponenten im JBuilder 2

XML - Konfiguration von JBuilder Browseransicht aktivieren : macht den integrierten Browser verfügbar Standardstylesheet übernehmen : zeigt die Baumansicht einer XML -Datei Transform - Verfolgung : Optionen für die Transform-Verfolgung mit deren Hilfe bei einer Umwandlung der Programmfluß im Meldungsfenster verfolgt werden kann, wenn ein Stylesheet angewendet wird. 3 Inhalt XML - Konfiguration von JBuilder XML - Umwandlung und Validierung Web - Publishing mit Cocoon XML - Databinding mit Castor und BorlandXML XML - Datenbankkomponenten im JBuilder 4

XML Umwandlung und Validierung Integration des Xerces - Parsermoduls DTD zu XML Experte XML zu DTD Experte Validierung gegen Schemata und DTDs XML Betrachter (Browser) 5 Erstellen eines XML - Files aus einer DTD Rechtsklick auf die DTD XML - Erstellen auswählen 6

Erstellen eines XML - Files aus einer DTD Root - Element auswählen Ausgabe - Datei angeben im Feld System die zu referenzierende DTD angeben 7 Inhalt XML - Konfiguration von JBuilder XML - Umwandlung und Validierung Web - Publishing mit Cocoon XML - Databinding mit Castor und BorlandXML XML - Datenbankkomponenten im JBuilder 8

Probleme beim Web - Publishing Webpublishing Starres Layout Großer Änderungsaufwand Aufwand im Contentmangement Webentwicklung Unübersichtliche ServerPage Anwendungen Problematische Trennung der Kompetenzen und Aufgaben Starres Layout 9 XSL im Browser Server XML XSL 10

Serverside XML Server wandelt XML in HTML, WML,... um Aufbereitung für verschiedene Clients ist möglich IE, Netscape, WAP-Client,... Keine speziellen Anforderungen an den Browser Java, Neue Version,... 11 XSLT Prozessor html.xsl csv.xsl news.html txt.xsl docbook.xsl news.txt news.xml XSLT Prozessor news.csv docbook.xml 12

Idee: XSLT im Servlet Web Server Servlet Engine XSLT Prozessor XML XSL XSL Dokument Sheets XSL XSL XSL Sheets Sheets 13 Apache Cocoon is a 100% pure Java publishing framework that relies on new W3C technologies (such as DOM, XML, and XSL) to provide web content. Quelle: Cocoon 1 README A small revolution Stefano Mazzocchi (Autor und Architekt von Cocoon) 14

JBuilder5 und Cocoon Cocoon in ein Projekt einbinden : Datei -> Neu 15 JBuilder5 und Cocoon Cocoon in ein Projekt einbinden : Konfiguration der Bibliotheken Cocoon - Basis Klasse Quelle Dokumentation Bibliotheken WAR generieren 16

JBuilder5 und Cocoon Projektfenster : Dateien, die vom Cocoon - Experten erstellt werden Cocoon.war web.xml cocoon.properties cocoon.xml index.xml/xsl 17 JBuilder5 und Cocoon Dateien in das Stammverzeichnis kopieren : Cocoon ausführen : 18

JBuilder5 und Cocoon Der Browser : 19 Inhalt XML - Konfiguration von JBuilder XML - Umwandlung und Validierung Web - Publishing mit Cocoon XML - Databinding mit Castor und BorlandXML XML - Datenbankkomponenten im JBuilder 20

XML - Data - Binding Mit Hilfe von Datenbindung kann man auf Daten zugreifen, diese Bearbeiten und die bearbeiteten Daten an eine Datenbank zurückschicken oder mit einem XML Dokument anzeigen. Das XML Dokument fungiert als Übertragungsmechanismus zwischen Anwendung und Datenbank. 21 XML - Data - Binding Die Datenbindung wird implementiert, indem Java Klassen generiert werden, die für die in einer Grammatik (DTD o. Schema) enthaltenen Begrenzungen stehen. Die XML Files entsprechen dann den Instanzen der Klassen. Mit den so erstellten Klassen lassen sich XML Dokumente lesen, erstellen oder validieren, die dieser Grammatik entsprechen. 22

XML - Data - Binding XML DB Java 23 XML - Data - Binding Roundtrip Schema/ DTD kompiliert Klassen erfüllt instanceof Dokument unmarshal marshal Objekte 24

Castor Das Objektmodell : Castor ist ein Datenbindungssystem, das eine Instanz eines XML Schemas einem Objekt zuordnet das für die Daten steht. Das Objektmodell umfaßt Klassen, Typen sowie Deskriptoren, die verwendet werden, um Infos zu einer Klasse und deren Feldern abzurufen. 25 Castor Marshalling : Marshalling beschreibt einfach einen Vorgang, bei dem ein Objekt in einen Datenstrom umgewandelt wird und umgekehrt. Das Castor System verwendet ein Marshalling System, das ClassDescriptors und FieldDescriptors verwendet, um das Marhalling von und nach XML zu beschreiben. 26

JBuilder5 und Castor Rechtsklick auf das Schema Java generieren auswählen 27 JBuilder5 und Castor Der Datenbindungsexperte : Typ der Datenbindung Castor Weiter 28

JBuilder5 und Castor Der Datenbindungsexperte für Castor: Pfad des Schemas wird vorbesetzt Package - Namen angeben evtl. weitere Optionen festlegen Fertigstellen 29 JBuilder5 und Castor Projektansicht : Java - Dateien, die vom Datenbindungsexperten erstellt wurden 30

BorlandXML BorlandXML verwendet DTDs um Java Klassen zu generieren. Schritt 1 : Generierung einer Klassenmodelldatei aus einer DTD. Die Datei beschreibt eine übersichtliche Struktur der Zielklassen und ermöglicht es diese Klassen anzupassen Schritt 2 : BorlandXML generiert nun Java Klassen aus der Klassenmodell Datei. 31 BorlandXML Der Datenbindungsexperte für BorlandXML: 32

BorlandXML Funktionalität von BorlandXML JavaBean Bearbeitung um ein XML Dokument zu erstellen oder auf Daten im Dokument zuzugreifen. Marshalling und Unmarshalling. Dokumentenvalidierung : Überprüfen von JavaBean Objekten vor dem Marshalling zu XML bzw. nach dem Unmarshalling eines Dokumentes zu JavaBean Objekten. 33 Inhalt XML - Konfiguration von JBuilder XML - Umwandlung und Validierung Web - Publishing mit Cocoon XML - Databinding mit Castor und BorlandXML XML - Datenbankkomponenten im JBuilder 34

XML - Datenbankkomponenten Typen von XML Dokumenten Datenzentrische XML - Dokumente Dokumentenzentrische XML -Dokumente 35 XML - Datenbankkomponenten datenzentrische XML - Dokumente XML dient als Transportmedium zwischen DB und Anwendung Daten werden zur maschinellen Weiterverarbeitung verwendet sehr hohe Granularität der Daten regelmäßige Struktur keine Mischinhalte 36

XML - Datenbankkomponenten datenzentrisches XML - Dokument <SalesOrder SONumber="12345"> <Customer CustNumber="543"> <CustName>ABC Industries</CustName> <Street>123 Main St.</Street> <City>Chicago</City> <State>IL</State> <PostCode>60609</PostCode> </Customer>... </SalesOrder> 37 XML - Datenbankkomponenten dokumentenzentrische XML - Dokumente eher unregelmäßige Struktur weniger granuliert viel Mischinhalt die Reihenfolge des Auftauchens der PCDATA und Childelemente ist wichtig 38

XML - Datenbankkomponenten dokumentenzentrisches XML - Dokument <Produkt> <Name>Bananenquark</Name> <Hersteller>Frutti GmbH Hinterdupfingen</Hersteller> <Kurzbeschreibung>leckere Bananenquark aus dem Hinterland</Kurzbeschreibung> <Beschreibung> <Para>Der leckere Bananenquark wird in <i>farbigen Plastikschalen</i>, die <b> völlig ökologisch</b> gereinigt wurden, ausgeliefert. Die verwendeten Bananen wurden aus den <b> besten Banenen Südschwedens</b> ausgewählt.... </Para> <Para>Sie können:</para> <Liste> <Eintrag> <Link dest="bestellen.html">gleich Bananenquark bestellen </Link> </Eintrag> <Eintrag> <Link dest="schweden.html">mehr über den Auswahlprozess der Bananen in Schweden erfahren </Link> </Eintrag>... </Produkt> 39 Dokumente in die Datenbank bringen Software, die Daten zwischen Dokumenten und relationalen Datenbanken austauscht, benötigt ein sogenanntes Mapping. Hierbei unterscheidet man zwischen zwei Formen: Vorlagenbasiertes Mapping (Template - Driven Mapping) Modellbasiertes Mapping (Model - Driven Mapping) 40

Vorlagenbasiertes Mapping Es gibt kein vordefiniertes mapping zwischen Dokument und Datenbank produktspezifische Kommandos werden in eine Vorlage eingebettet, die von der Übertragungssoftware ausgeführt werden Die Middleware ersetzt die Anweisung durch die korrespondierenden Daten und formatiert das Ganze als XML 41 Vorlagenbasiertes Mapping Vorlage : <FlightInfo> <Introduction>The following flights have availablseats:</introduction> <SelectStmt>SELECT Airline, FltNumber, Depart, Arrive FROM Flights</SelectStmt> <Conclusion>We hope one of these meets your needs</conclusion> </FlightInfo> Rückgabe : <FlightInfo> <Introduction>The following flights have available seats:</introduction> <Flights> <Row> <Airline>ACME</Airline> <FltNumber>123</FltNumber> <Depart>Dec 12, 1998 13:43</Depart> <Arrive>Dec 13, 1998 01:21</Arrive> </Row>... </Flights> <Conclusion>We hope one of these meets your needs.</conclusion> </FlightInfo> 42

Modellbasiertes Mapping Daten entsprechen einer vordefinierten Form und werden dementsprechend gemapped Gegenüber dem template-driven Mapping wird Flexibilität eingebüßt, allerdings wird die Einfachheit erhöht. Dokumente, die nicht der vordefinierten Form entsprechen, können per XSLT transformiert werden. 43 Modellbasiertes Mapping Map - File : <XMLToDBMS Version="1.0"> <Options> </Options> <Maps> <ClassMap> <ElementType Name="composer"/> <ToClassTable> <Table Name="composer"/> </ToClassTable> <PropertyMap> <Attribute Name="epoche"/> <ToColumn> <Column Name="epoche"/> </ToColumn> </PropertyMap> <PropertyMap> <ElementType Name="name"/> <ToColumn> <Column Name="name"/> </ToColumn> </ClassMap> </Maps> </XMLToDBMS> 44

Tabellen und Objektrelationales Modell Sichtweisen der Abbildung von Daten in einem XML - Dokument : als Tabellenmodell und daraus resultierend das tabellenbasierte Mapping als Objektmodell und daraus resultierend das objekt relationale Mapping 45 Tabellenbasiertes Mapping Wird oft von Middleware Produkten benutzt, um Daten zwischen XML Dokumenten und relationalen Datenbanken auszutauschen. XML Dokumente werden als einzelne oder mehrere Tabellen in der Datenbank modelliert. Die XML - Dokumente müßen einer bestimmten Struktur genügen 46

Tabellenbasiertes Mapping Struktur eines XML - Files und die entsprechende Tabelle: 47 Objekt - Relationales Mapping Wird von der XML -DBMS Middleware im JBuilder verwendet Beim Objekt - Relationalen Mapping werden die Daten des XML Dokumentes als Baum von Objekten modelliert 48

Objekt - Relationales Mapping XML - File, Objektmodell und Tabellenmodell 49 Vorlagenbasierte Komponeneten in JBuilder JBuilder kommt mit zwei vorlagenbasierten Komponenten, XTable und XQuery. Die Komponenten sind Unidirektional, es können nur Daten aus der Datenbank herausgezogen werden. Die Parametrisierung dieser Komponenten kann auf drei Arten erfolgen : über den Customizer der Komponente über den Inspektor mit Hilfe eines XML - Abfragedokumentes 50

Vorlagenbasierte Komponeneten in JBuilder XTable : führt eine Select-Anweisung auf eine Untermenge einer Tabelle aus. Die Untermenge ergibt sich aus der Bedingung (Schlüssel-Wert- Paare), die in der where-klausel der Select-Anweisung definiert ist. Bei der Ausführung wird eine Ergebnismenge in XML generiert. Der Tabellenname, Schlüssel-Wert-Paare und andere Parameter werden entweder in einem XML-Abfragedokument, in Bean- Eigenschaften oder in beidem bereitgestellt 51 Vorlagenbasierte Komponeneten in JBuilder XQuery : Führt eine SQL-Anweisung aus und generiert eine Ergebnismenge in XML. SQL und weitere Parameter werden entweder in einem XML- Abfragedokument, in Bean-Eigenschaften oder in beidem bereitgestellt. der Unterschied zu XTable besteht darin, dass die Komponente direkt eine SQL - Anweisung entgegennimmt. 52

Modellbasierte Komponenten in JBuilder JBuilder implementiert dazu die Open - Source Middleware XML-DBMS. Diese Lösung benötigt folgende Komponenten: relationale Datenbank mit einem JDBC - Treiber XML - Dokument zur ein und Ausgabe von Daten Map - File API - Methoden zu Datenübertragung von und zur Datenbank 53 Modellbasierte Komponenten in JBuilder JBuilder bietet folgende XML - DBMS - Unterstützung : XML - DBMS - Experte die Komponente XMLDBMSTable die Komponente XMLDBMSQuery 54

Modellbasierte Komponenten in JBuilder Der XML - DBMS Experte : Erstellen einer SQL - Script - Datei auf Grundlage einer DTD Erstellen einer Map - Datei noch keine Untersützung zu Erstellung von Map - Dateien aus Datenbankschemata 55 Modellbasierte Komponenten in JBuilder XMLDBMSQuery und XMLDBMSTable : Diese Beans werden verwendet, um Datenbankdaten in ein XML- Dokument bzw. XML - Dokumente in Datenbankdaten umzuwandeln. Sie werden in Verbindung mit der MAP-Datei und Datenbanktabellen verwendet, die durch den Experten zum Generieren von XML-DBMS- Mapping und SQL erzeugt wurden. der Unterschied zwischen den Komponenten besteht darin, dass die XMLDBMSQuery - Komponente eine SQL - Anweisung entgegennimmt und nur Unidirektional ist. 56

Beispiel zu XMLDBMSQuery und XMLDBMSTable Neue Datenbank anlegen : Klasse zum Projekt hinzufügen : 57 Beispiel zu XMLDBMSQuery und XMLDBMSTable XML DBMS - Experten aufrufen : JDBC - Einstellungen : 58

Beispiel zu XMLDBMSQuery und XMLDBMSTable Map und SQL - File erzeugen : Tabellen erzeugen : 59 Beispiel zu XMLDBMSQuery und XMLDBMSTable XMLTable - Bean über den Designer hinzufügen : 60

Beispiel zu XMLDBMSQuery und XMLDBMSTable XMLTable - Bean über den Customizer konfigurieren : 61 Beispiel zu XMLDBMSQuery und XMLDBMSTable Überprüfen, ob die Übertragung funktioniert hat : 62

Fragen 63 Quellen Bookmarks : Seybold Publications and O Reilly & Associates,Inc : www.xml.com Dokumentation zu XML - DBMS www.rpbourret.com JBuilder5 : www.borland.com JBuilder5 Online - Hilfe Cocoon Home : xml.apache.org Castor Home : castor.exolab.org 64

Ende Danke für Ihre Aufmerksamkeit! 65