k omplexpraktiku m m ultimediatechni k ii s o s e 2009 amacont vs. cocoon serverumgebung für...
Post on 05-Apr-2015
105 Views
Preview:
TRANSCRIPT
KOMPLEXPRAKTIKUM MULTIMEDIATECHNIK IISOSE 2009
AMACONT vs. COCOON
Serverumgebung für aspektorientierte, adaptive Webanwendungen
AMACONT COCOON XHTML
Folie 1
KOMPLEXPRAKTIKUM MULTIMEDIATECHNIK IISOSE 2009
Folie 2
Gliederung 1. Zielstellung
2. Organisation
3. Umsetzung
4. Demonstration
5. Erzielte Ergebnisse
KOMPLEXPRAKTIKUM MULTIMEDIATECHNIK IISOSE 2009
Folie 3
Zielstellung
KOMPLEXPRAKTIKUM MULTIMEDIATECHNIK IISOSE 2009
Folie 4
Zielstellung
• AMACONT Dokumentstruktur (architektonisch):
KOMPLEXPRAKTIKUM MULTIMEDIATECHNIK IISOSE 2009
Folie 5
Zielstellung • Erstellung einer AMACONT-Serverumgebung
Kontextdaten Externe Informationsquellen Adaption Transformation Testumgebung
• Cocoon-Framework Basistechnologie
• Einfache Extensionsmöglichkeit
• Webentwicklung Praxiserfahrung
• Training Projekt-Ablauf und Organisation
KOMPLEXPRAKTIKUM MULTIMEDIATECHNIK IISOSE 2009
Folie 6
Organisation
KOMPLEXPRAKTIKUM MULTIMEDIATECHNIK IISOSE 2009
Folie 7
Organisation
• Komponenten und Verantwortlichkeiten:
KOMPLEXPRAKTIKUM MULTIMEDIATECHNIK IISOSE 2009
Folie 8
Organisation • Projektabschnitte:
KOMPLEXPRAKTIKUM MULTIMEDIATECHNIK IISOSE 2009
Folie 9
Organisation
KOMPLEXPRAKTIKUM MULTIMEDIATECHNIK IISOSE 2009
Folie 10
Umsetzung Architektur
(Kristian Scholze)
• Verwendete Frameworks: Maven Cocoon Jetty Eclipse AMACONT
• Cocoon Pipeline Planung
• Komponentenschnittstellen spezifizieren
• Vorverarbeitung (Auflösung Referenzen)
KOMPLEXPRAKTIKUM MULTIMEDIATECHNIK IISOSE 2009
Folie 11
Umsetzung Kontext
(Lars Kreisz, K.S.)
• Nutzerkontext dynamische AnpassungJavaScript Kontextsensoren Client SeiteKontextsensoren Serverseite (Einbettung externer Dienste)Einbettung in gerenderten CodeLogin Funktion (CTRL + ALT + X)
• DOJO Framework AJAX Calls
• Kontextmodellierung JENA Ontology
• Geltungsbereich: Applikation 1:N (z.B. Device.owl, Amacont.owl)
• Persistenz + Initialisierung des geeigneten Kontextes
KOMPLEXPRAKTIKUM MULTIMEDIATECHNIK IISOSE 2009
Folie 12
Umsetzung Datenbank &
Webservices(Fabian Potschies, David Gest)
• Cocoon SQL Transformer als Basiskomponente ( Transformation in Cocoon SQL)
• Hierarchische Anfragen Rekursion Cocoon Pipeline
• Rekursion Pipelines nicht trivial Berechnung maximale
Anfragetiefe
• Parser für Transformation (iterative) erforderlich
KOMPLEXPRAKTIKUM MULTIMEDIATECHNIK IISOSE 2009
Folie 13
Umsetzung Datenbank &
Webservices(Fabian Potschies, David Gest)
• AMACONT: WSDL nicht implementiert
• Schemaerweiterung + Abfrage Logik notwendig
• Serielle Abarbeitung > 1 WS p. Page
KOMPLEXPRAKTIKUM MULTIMEDIATECHNIK IISOSE 2009
Folie 14
Umsetzung Adaption
(David Götze, Maximilian Rudolph, Susanne Haase, Torsten Schiefer)
• Auswahl von Dokumentelemente (Nutzerkontext)
• AMACONT Schema: "Logic-Tags" eigene Syntax SPARQL z.B. Clientbrowser lang:EN -> englisch
sprachige Textvarianten
• Transformation in SPARQL Kontextanfrage Ontologie
• AMACONT Schema Überarbeitung (z.B. SPARQL)
KOMPLEXPRAKTIKUM MULTIMEDIATECHNIK IISOSE 2009
Folie 15
• Komponierte Variante Client verständliche Transformation
XHTML 1.1 browsertypabhängige Transformation
• Hierarchischer Aufbau + Korrekte Anzeige komplex
• Stylesheets + Medienkomponenten (Flashplayer)
• AMACONT Elementtypen Erweiterbarkeit
• ToggleText, StretchBar
• HREF über mehrere Elemente hinweg(Trigger: Anzahl Zeichen)
Umsetzung Transformati
on XHTML(Debora Adam, Yihan Deng, M.R.)
KOMPLEXPRAKTIKUM MULTIMEDIATECHNIK IISOSE 2009
Folie 16
• Ergebnis, beispielhaft (LRO Animierter Ladebalken):Umsetzung
Transformation XHTML(Debora Adam, Yihan Deng, M.R.)
KOMPLEXPRAKTIKUM MULTIMEDIATECHNIK IISOSE 2009
Folie 17
• GUI für einfache Fehlersuche Cocoon Applikation
Laufzeitfehler Logging Information
• Konfiguration des Servlet-Containers (Jetty 6.1.4)
• Kompilierung + Start / Stopp (untersch. Logging-Stufen)
• Ersetzung einzelner (Pipeline-) Komponenten vor D. Run
• Ausgabe Zwischenergebnis (nach Pipelineaufruf)
• Vergleich mit erwartetem Output (Difference-Viewer)
Umsetzung Cocoon
Debugger(Cosmin Jurma)
KOMPLEXPRAKTIKUM MULTIMEDIATECHNIK IISOSE 2009
Folie 18
AuswahlCocoon Projekt
KonfigurationServlet-Container
Log-Ausgabe
Umsetzung Cocoon
Debugger(Cosmin Jurma)
KOMPLEXPRAKTIKUM MULTIMEDIATECHNIK IISOSE 2009
Folie 19
4. Demonstration
KOMPLEXPRAKTIKUM MULTIMEDIATECHNIK IISOSE 2009
Demonstration Hyperadapt / Allgemeines
• Bereitstellung einer Portalseite– Laden der Javascriptsensoren
<entry key="javascriptcontextsensors">ScreenSize,BrowserPlugins
</entry>
Folie 20
KOMPLEXPRAKTIKUM MULTIMEDIATECHNIK IISOSE 2009
Demonstration Hyperadapt / Allgemeines
• Bereitstellung einer Portalseite– Laden der Javascriptsensoren
dojo.provide("AMACONT.sensors.ScreenSize");dojo.require("AMACONT.AbstractSensor");dojo.declare("AMACONT.sensors.ScreenSize", AMACONT.AbstractSensor, {
detect : function() {
this.collect("window_height",window.innerHeight + "^^int");
this.collect("window_width",window.innerWidth + "^^int");
}});
Folie 21
KOMPLEXPRAKTIKUM MULTIMEDIATECHNIK IISOSE 2009
Demonstration Hyperadapt / Allgemeines
• Adaptive Transformation von Ressourcen
• Asynchrones Nachladen von Seiteninhalten
• Rendern des Amacontformates– „Stretchbar“, „Thumbnail“, Multimedia
logo.png?tranformer=thumbnail&thumbnailSize=30
Folie 22
KOMPLEXPRAKTIKUM MULTIMEDIATECHNIK IISOSE 2009
Demonstration Hyperadapt / Adaption
• Auswahl der Nutzersprache
<aada:If> <aada:Expr> <aada:Term> <aada:UserParam> dev:Language dev:pref_lang </aada:UserParam> <aada:Const>de</aada:Const> </aada:Term> </aada:Expr> <aada:Then> <aada:ChooseVariant> welcome_de.pt2 </aada:ChooseVariant> </aada:Then>
Folie 23
KOMPLEXPRAKTIKUM MULTIMEDIATECHNIK IISOSE 2009
Demonstration Hyperadapt / Nutzermanagement
• Bereitstellung eines Nutzermanagements mit Login/Logout
• Einbinden von serverseitigen Kontextsensoren– Verarbeiten der Nutzerinformationen
<entry key="javacontextsensors">UserInformationBloater
</entry>
[ pref_lang_loggedin:
(usr:AmacontUser usr:userlang ?x),bound(?x)
->(dev:Language dev:pref_lang ?x)]
<entry key="javacontextsensors">UserInformationBloater
</entry>
Folie 24
KOMPLEXPRAKTIKUM MULTIMEDIATECHNIK IISOSE 2009
Demonstration Soundnexus / Datenbankanfragen
• Anfragen von externen Datenbanken
• Einbinden von Requestparametern in Anfragen
<aco:AmaListComponent [..]query=" SELECT name AS interpret
FROM interpret WHERE id=${query_field('interpret_id')}
">
query="SELECT * FROM album WHERE id = 'substitute(id)'"
Folie 25
KOMPLEXPRAKTIKUM MULTIMEDIATECHNIK IISOSE 2009
Demonstration Soundnexus / Webserviceanfragen
• Anfragen von externen Webservices per SOAP
<ws:ws-calls xmlns:ws="[..]AmaWebService"> <ws:ws-soap-call callingID="ws1234"> <ws:wsdl [..]/> <ws:request> <ws:soap-body> <tem:AlbumSearch> <tem:artistText>
Herbert Groenemeyer </tem:artistText>
</tem:AlbumSearch> </ws:soap-body> </ws:request> </ws:ws-soap-call> </ws:ws-calls>
Folie 26
KOMPLEXPRAKTIKUM MULTIMEDIATECHNIK IISOSE 2009
Folie 27
5. Erzielte Ergebnisse
KOMPLEXPRAKTIKUM MULTIMEDIATECHNIK IISOSE 2009
Folie 28
Erzielte Ergebnisse
• AMACONT Serverumgebung
• Hohes Maß an Flexibilität: Pipeline Architektur
• AMACONT Technologie Erweiterung:
AJAX Ontologie Webservices
• Organisation + Zusammenarbeit in großem Entwicklerteam
• Viel Erfahrung im Bereich neuer Webtechnologien gesammelt
KOMPLEXPRAKTIKUM MULTIMEDIATECHNIK IISOSE 2009
Folie 29
• Performanz: basistechnologiebedingt Pipelineparallelität besser ausnutzbar
• Dokumentation zu Basis erweiterbar
• Debugger Source Code + Breakpoints
• Kontexterweiterung
• Zusätzliche Medienkomponenten
• Mit der Erfahrung von heute… 2nd Development Cycle
• Dank für die ausdauernde Unterstützung und Geduld unserer Tutoren
Grenzen und Erweiterungen
KOMPLEXPRAKTIKUM MULTIMEDIATECHNIK IISOSE 2009
Folie 30
Vielen Dank für Ihre
Aufmerksamkeit
KOMPLEXPRAKTIKUM MULTIMEDIATECHNIK IISOSE 2009
KOMPLEXPRAKTIKUM MULTIMEDIATECHNIK IISOSE 2009
Folie 5
Zielstellung
• AMACONT Dokumentstruktur (Instanz):
KOMPLEXPRAKTIKUM MULTIMEDIATECHNIK IISOSE 2009
Folie 12
Umsetzung Architektur
(Kristian Scholze)
KOMPLEXPRAKTIKUM MULTIMEDIATECHNIK IISOSE 2009
Folie 14
Umsetzung Kontext
(Lars Kreisz, K.S.)
• Geltungsbereich: Applikation
(1:N z.B. Device.owl, Amacont.owl)
• Performanz durch Session Management
• Kontextmodell über Ontologie
• SPARQL als Anfragesprache
KOMPLEXPRAKTIKUM MULTIMEDIATECHNIK IISOSE 2009
Folie 15
Umsetzung Datenbank &
Webservices(Fabian Potschies, David Gest)
• AMACONT: Datenbankanfragen möglich
• Hierarchische Anfragen Rekursion Cocoon Pipeline
• Transformation in Cocoon-SQL
• AMACONT: WSDL nicht implementiert
• Schemaerweiterung + Abfrage Logik notwendig
• Serielle Abarbeitung > 1 WS p. Page
KOMPLEXPRAKTIKUM MULTIMEDIATECHNIK IISOSE 2009
Folie 19
• Logic-Tag Example (simple context request):Umsetzung Adaption
(David Götze, Maximilian Rudolph, Susanne Haase, Torsten Schiefer)
KOMPLEXPRAKTIKUM MULTIMEDIATECHNIK IISOSE 2009
Folie 3
Organisation
KOMPLEXPRAKTIKUM MULTIMEDIATECHNIK IISOSE 2009
Folie 3
Organisation
Projektablauf:
KOMPLEXPRAKTIKUM MULTIMEDIATECHNIK IISOSE 2009
Folie 3
Organisation
Komponenten und Verantwortlichkeiten:
KOMPLEXPRAKTIKUM MULTIMEDIATECHNIK IISOSE 2009
raus
Umsetzung Architektur
(Kristian Scholze)
Cocoon Projekt Initialisierung + Betreuung
Bonus: JENA – Ontologie
Herausforderung:
mit wenig Dokumentationschnellgut verständlicheArchitektur entwickelnmit guter Performanz
KOMPLEXPRAKTIKUM MULTIMEDIATECHNIK IISOSE 2009
raus
Umsetzung Kontext
(Lars Kreisz, K.S.)
Basis W3C Delivery Context Ontology Kontextmodel
erweiterbar GEO IP
Repräsentant externe Dienste
WS Komponente: (Schema +
Anfrage)
KOMPLEXPRAKTIKUM MULTIMEDIATECHNIK IISOSE 2009
raus -> evtl db rein
Umsetzung Datenbank &
Webservices(Fabian Potschies, David Gest)
KOMPLEXPRAKTIKUM MULTIMEDIATECHNIK IISOSE 2009
Folie 3
Logic-Tag (SPARQL request):
Umsetzung Adaption
(David Götze, Maximilian Rudolph, Susanne Haase, Torsten Schiefer)
KOMPLEXPRAKTIKUM MULTIMEDIATECHNIK IISOSE 2009
raus
Koordination Architektur – Kontext – Adaption Definition SPARQL Anfragesemantik für
Nutzerkontext
Umsetzung Adaption
(David Götze, Maximilian Rudolph, Susanne Haase, Torsten Schiefer)
KOMPLEXPRAKTIKUM MULTIMEDIATECHNIK IISOSE 2009
raus
Ablauf Rendering:
Umsetzung Transformati
on XHTML(Debora Adam, Yihan Deng, M.R.)
KOMPLEXPRAKTIKUM MULTIMEDIATECHNIK IISOSE 2009
Folie 3
Umsetzung Transformati
on XHTML(Debora Adam, Yihan Deng, M.R.)
KOMPLEXPRAKTIKUM MULTIMEDIATECHNIK IISOSE 2009
raus
Ablauf Debug Run:
Umsetzung Cocoon
Debugger(Cosmin Jurma)
KOMPLEXPRAKTIKUM MULTIMEDIATECHNIK IISOSE 2009
Folie 24
Umsetzung Cocoon
Debugger(Cosmin Jurma)
KOMPLEXPRAKTIKUM MULTIMEDIATECHNIK IISOSE 2009
Folie 12
Umsetzung Architektur
(Kristian Scholze)
top related