Struts Seminar Javabasierte Webanwendungen. Tobias Kutzler2 Überblick Historie Was ist Struts? Model Controller View Zusammenfassung.

Slides:



Advertisements
Ähnliche Präsentationen
interaktiver Web Service Workflows
Advertisements

Basis-Architekturen für Web-Anwendungen
Was ist J2EE Die Vorteile von J2EE J2EE Modell Die Komponente von J2EE
Übung 5 Mehrstufige Client/Server-Systeme mit Enterprise Java Beans
1 Prof. Dr. Andreas SchmietendorfWS06/07 – Labor C/S-Programmierung Übung 4 Mehrstufige Client/Server-Systeme mit JSPs, Servlets und JavaBeans (Web-Container)
Bastian Cramer, Universität Paderborn Entwurfsmuster für Webanwendungen Projektgruppe: Generierung von Webanwendungen aus visuellen Spezifikationen.
Erweiterung B2B Usermanagement / LDAP-Anbindung
Java 2 Enterprise Edition (J2EE)
Seminar: XML für Fortgeschrittene Referent: Katrin Apel
Daniel Höfler Markus Thurner XMLApplicationPlatform Siemens OpenStage 60/80.
Stefanie Selzer - Pascal Busch - Michael Kropiwoda
DOM (Document Object Model)
Information und Technik Nordrhein-Westfalen Das personalisierte Portal Düsseldorf, Das personalisierte Portal.
Hassan Bidani Jallal Alami Rahmouni FH Wiesbaden
MVC – ein Architekturmuster
Tomcat (I) Ende 1999 Jakarta-Projekt von Apache, IBM und Sun gegründet
Das Build-Tool ANT ETIS SS05. ETIS SS05 - Nadine FröhlichANT 2 Gliederung Motivation Build - Datei –Allgemeiner Aufbau –Project –Target –Task –Properties.
Technik Gestaltung Navigation Daten. Übersicht Client Webbrowser InternetServer.
Modellierung der Zugriffslogik auf Datenbanktabellen Software Component Technology for Distributed Applications Andreas Fink.
Projekt Web Engineering
Hänchen & Partner GmbH 1 Web-Anwendungen mit dem Jakarta Struts Framework 3.Juli 2003 Martin Burkhardt.
Web-Anwendungsentwicklung à la MVC. Übersicht Über Georg Heeg Ein industrielles Beispiel Web-Anwendungen aus Smalltalker-Sicht MVC für das Web Programmierdemo.
Seite Common Gateway Interface. Konzepte. Übersicht 1Einleitung 2Was ist CGI? 3Wozu wird CGI verwendet? 4Geschichtlicher Überblick 5Grundvoraussetzungen.
Systementwicklungsprojekt:
Konzeption und Realisierung einer
FQTQ ShowCase Prototyp einer Applikation zur Beratungsunterstützung.
Chat System – Gruppe B Tim Braun, Andre Ester, Florian Müller und
Coccon das Web-XML-Publishing System Thomas Haller.
Herzlich Willkommen… welcome… soyez la bienvenue….
Seminar Internet - Technologie
Seminar Web-Anwendungen mit JSP u. ASP.NET entwickeln JavaServer Faces Vortragender: Thomas Dermin Custom-Components.
Robotron – Titel der Präsentation Martin Kunze,
TUM Hauptseminar Web Services – Water und JWIG Folie 1 Hauptseminar Web Services Sprachen I: Water und JWIG Andreas Töllich TU München, Lehrstuhl für Informatik.
Einführung / Geschichte Einführung / Geschichte Motivation Motivation Beispiel Beispiel Architektur / Komponenten Architektur / Komponenten Konfiguration.
EJB-Applikationsserver
Aichinger Christian, Strasser Jürgen. Inhalt JSF EJB Praxis - Integration.
Nicolas Frings Maximilian Bernd Stefan Piernikarcyk
Architekturen und Techniken für computergestützte Engineering Workbenches.
Projektpräsentation von André Käckenmester, Marc Brünig, Jörg Straube,
Entwicklung verteilter Anwendungen II, SS 13 Prof. Dr. Herrad Schmidt SS 13 Kapitel 2 Folie 2 ASP.NET HTTP-Handler (1)
XML-Serverpages Vortrag im Rahmen des Seminars XML-Technologien Tobias Faessler.
Internet und SMS Internet und SMS Daniel Rickenbacher Jeremy Deuel.
Übersicht Was ist cocoon? Separation of Concerns Pipeline Modell
Turbine Konzepte und Dienste
Vergleich verschiedener Konzepte für das Software Engineering Praktikum.
Beschreiben Sie eine Web Interaktion mittels Java Applets.
Java Server Pages Sergej Keterling
JavaServer Faces Urs Frei. Inhalt JSF Funktionsweise Rückblick JSP Bestandteile von JSF So einfach ist die Anwendung (Beispiel) Eclipse im Einsatz (Entwicklungsumgebung)
Datenanbindung in Webapplikationen
Frameworks zur Implementierung von Hypertext Anwendungen
© 2001 Sven Dammann1 Aufbau Integrierter Informationssysteme XML Bearbeitung und relationale Abbildung Sven Dammann Martin-Luther-Universität Halle-Wittenberg.
Generative Softwareentwicklung in der Praxis Olaf Kaus, „Java User Group“, Hannover 6.Oktober 2003.
Datenbanken im Web 1.
Webserver Apache & Xampp Referenten: Elena, Luziano und Sükran
HG13_ Herzgen, Jung & Lorkowski1 Java Programmierung BlueJ Workshop.
Java Server Pages 2 und Benutzerdefinierte Tags Strahil Yordanov.
Stefan Metzlaff1 Cocoon Stefan Metzlaff
Frameworks
J2EE-Motivation(I) Anforderungen an heutige Software u.a.:
- Studienarbeit - Entwurf und Umsetzung von kombinierten Anfragen für die Ähnlichkeitssuche auf digitalen Bilder auf der Basis von Regionen und Features.
Marcel Genzmehr 1 Javabasierte Webtechnologien Web Application Framework Turbine.
/14Mohamed Sabbar, Medieninformatik - Fachseminar 14/12/09 Java Server Faces (JSF) „JSF“ ist mehr als nur eine Insel Fachseminar WS 09/10 Mohamed Sabbar.
Design Pattern1 Motivation Entwurfsmuster Entwurf wiederverwendbarer objektorientierter Software schwer gute Entwürfe entstehen durch Wiederverwen- dung.
1 JavaServer Pages Stephan Baldes JavaServer Pages Einführung
Rechen- und Kommunikationszentrum (RZ) Entwicklung einer Web- Oberfläche mit Apache Wicket am Beispiel des IdentityAdmins Seminarvortrag Melanie.
Oracle ADF FacesSeite 1 Oracle ADF Faces OPITZ CONSULTING Oracles Implementierung der JavaServer Faces Spezifikation.
© 2012 TravelTainment Einführung in Spring Web MVC Seminarvortrag Sebastian Hesse
© 2008 TravelTainment The Amadeus Leisure Group Webanwendungen mit Java - HttpServlets 17.Dezember 2010 Sebastian Olscher Erstprüfer: Hon.-Prof. Dr. H.
Verteilte Anwendungen: J2EE
Jakarta Struts Quasi-Standard für JSP-basierte Entwicklung: Jakarta Struts Key Features von Struts: Implementierung des Action-Command-Pattern („Model.
 Präsentation transkript:

Struts Seminar Javabasierte Webanwendungen

Tobias Kutzler2 Überblick Historie Was ist Struts? Model Controller View Zusammenfassung

Tobias Kutzler3 Historie 2000: Craig R. McCalahan Entwicklung eines MVC Frameworks für Java- Plattform Januar 2001: Apache Software Foundation veröffentlicht MVC Framework: Struts Teil von Jakarta: Server-Lösungen für Java Plattform (z.b. Apache Tomcat)

Tobias Kutzler4 Was ist Struts? Model-View-Controller Framework Kompatibel zur J2EE Plattform Basis: JSP- und Servlet-Technologie Teil des Jakarta Projekts (Apache Software Foundation) Keine Implementierung eines eigenen MVC- Konzepts notwendig

Tobias Kutzler5 Was ist Struts? Konzept und Aufbau Präsentation und Interaktion View Struts Tag Library JSP Controller ActionServlet Action Konfiguration XML Ressourcen Properties Files Dienste und Datenhaltung Model (Status und Dienste des Systems) ActionForm und JavaBeans

Tobias Kutzler6 Model Datenmodell der Anwendung Methoden zur Datenbearbeitung und – verarbeitung Repräsentation des aktuellen Zustands der Applikation JavaBeans ActionForms

Tobias Kutzler7 Model JavaBeans Klassen mit Einhaltung von Namens- konventionen bei Methoden und besondere Ereignisbehandlung Wiederverwendbare Java Komponenten Kapselung der (Verarbeitungs-) Logik einer Webapplikation Unterscheidung Visuelle Beans Nichtvisuelle Beans

Tobias Kutzler8 Model JavaBeans - Merkmale Properties: Repräsentation der Objekteigenschaften Methoden zur Bearbeitung von Prozessen und logischen Operationen Ereignisse: Kommunikation zwischen Beans und anderen Objekten Statuspersistenz: Speicherung des Bean- Zustandes

Tobias Kutzler9 Model JavaBeans – Anwendung: Struts: nichtvisuelle Beans System-State-Beans (Login) Business-Logic-Beans (z.b. Datenbankoperationen) ActionForm-Beans

Tobias Kutzler10 Model ActionForm-Beans Abbildung von Eingabeformularen in ActionForm- Bean Speicherung und Verarbeitung der Eingaben Jedes Formularfeld Property in Bean validate(): Prüfung der Eingaben reset(): Zurücksetzen der Werte

Tobias Kutzler11 Controller Steuerung der Verarbeitung/Weitergabe Anwendungslogik (Bean) oder View Bestandteile ActionServlet ActionMapping struts-config.xml Klassen, die von Klasse Action abgeleitet

Tobias Kutzler12 Controller Identifikation der Elemente einer Struts Anwendung über logische Namen (Mapping) struts-config.xml Zuordnung logischer Namen zu Java Server Page, Servlet, Klasse Start der Anwendung: Einlesen erzeugt Mapping- Tabelle

Tobias Kutzler13 Controller ActionServlet Ablaufsteuerung Action-Objekte: Ausführung spezieller Aufgaben ActionForm-Beans: Speicherung und Validation von HTML-Formular Daten ActionForward-Klassen: Weiterleitung des Programmflusses (View oder anderer Controller)

Tobias Kutzler14 Controller ActionMapping Mapping-Table (basierend auf struts-config.xml) Zuordnung von Requests zu Action-Klassen Bereitstellung einer Menge möglicher Weiterleitungs-Adressen (ActionForwards) ActionForward Weiterleitung des Nutzers auf neue Seite

Tobias Kutzler15 Controller Action Logische Anfrage Action-Klasse Verarbeitung des Requests, Rückgabe eines ActionForward-Objekts (Identifikation der nächsten Seite als logischer Name) perform() Umsetzung Aufruf der Geschäftslogik: JavaBean

Tobias Kutzler16 Controller Client Anfrage Controller (ActionServlet) View (JSP) ActionMapping Action struts-config.xml Model Bean Antwort web.xml Struts-Tag- Bibliothek Properties File

Tobias Kutzler17 Controller Zusammenfassung Aufruf mittels URI (z.b. ActionServlet: Suche eines passenden ActionMappings Properties aus Eingabeformular in ActionForm- Bean Aufruf von perform(): Verarbeitung durch Action und Rückgabe von ActionForward Weiterleitung an View

Tobias Kutzler18 View Darstellung der Daten Java Server Pages Ausgabe: HTML, XML, JavaScript Struts: Erweiterung der Funktionalität durch Tag-Bibliotheken Erstellung von Formularen Interaktion von ActionForm-Beans Fehlerbehandlung

Tobias Kutzler19 View Tags Erweiterbarkeit der JSP-Tag Library Definition in Tag Library Files (*.tld) Pro Tag eine Java-Klasse mit Properties Erzeugung von HTML für Client

Tobias Kutzler20 View Bean-Tags Zugriff auf Beans und deren Properties (get/set) HTML-Tags Erzeugen des HTML-Codes von Eingabeformularen …

Tobias Kutzler21 View Logic-Tags Bedingte Textausgabe Iteration über Objekt-Collections Anwendungsfluss-Management Iteration Existenzprüfung

Tobias Kutzler22 Zusammenfassung Vorteile: Komplexe Webanwendung wird in kleine Komponenten aufgeteilt (Bottom Up) Anwendung leicht erweiterbar und Komponenten durch Trennung wiederverwendbar Open Source Für grosse Anwendungen geeignet Bei Wachstum der Anwendung bleiben Überblick und Variabilität erhalten

Tobias Kutzler23 Zusammenfassung Nachteile Aufteilung der Anwendung in Komponenten hohe Komplexität Noch in Weiterentwicklung und Veränderung Änderungen im Code möglicherweise nötig

Tobias Kutzler24 Quellen Struts User Guide jakarta.apache.org/struts Sebastian Stein: Das Struts Framework der Apache Software Foundation (Studienarbeit, BA Mannheim) Marcel May, Daniel Marques, Dr. Roland Huß: Workshop: Struts in der Praxis