Komponentisierte Web-Frontends

Größe: px
Ab Seite anzeigen:

Download "Komponentisierte Web-Frontends"

Transkript

1 Komponentisierte Web-Frontends Umsetzung im Kontext Verteilter Systeme Uni Bamberg,

2 Agenda Vorstellung Motivation Architekturkonzepte Umsetzung mit Wicket Diskussion 2

3 VORSTELLUNG Vortragende Andreas Gärtner Partner, Principal Architect Dr. Martin Trapp Partner, Principal Architect 3

4 VORSTELLUNG Senacor ist ein deutschlandweit tätiger IT-Dienstleister Dienstleistung Business Consulting Technical Consulting Software Design u. Development Senacor Unternehmen Mitarbeiter: ca. 200 Aktionäre: Management und private Investoren Standorte Schwaig b. Nürnberg (Zentrale) Bonn, München, Frankfurt, Wien 4

5 VORSTELLUNG Große Unternehmen mit komplexen IT-Landschaften bestimmen das Kundenportfolio von Senacor 5

6 Agenda Vorstellung Motivation Architekturkonzepte Umsetzung mit Wicket Diskussion 6

7 MODERNE WEB-ANWENDUNGEN Moderne Web-Frontends bestehen aus funktional reichen Bausteinen, die für unterschiedliche Zugangskanäle wiederverwendet und neu kombiniert werden können Wie erreicht man das konzeptionell, fachlich und technisch? 7

8 WEB FRONTENDS DEPLOYMENT SICHT Typische Industrieszenarien für großen Web-Anwendungen weisen einen klar geschichteten Aufbau auf Browser (z.b. Firefox) Load Balancer (z.b. F5) HTTP Server (z.b. apache) Servlet Container (z.b. tomcat) Load balancer sorgen dafür, dass die Anfragen von Benutzern gleichmäßig auf die verfügbaren HTTP Server verteilt werden HTTP Server liefern statische Inhalte wie Formulare oder Stylesheets direkt aus Die eigentlichen Web- Anwendungen laufen in Servlet Container Cluster ab Möglichst wenig Geschäftslogik im Frontend Middle Layer Serviceschicht stellt Geschäftslogik für Frontends bereit 8

9 HISTORISCHE ENTWICKLUNG IN DER WEB-ENTWICKLUNG Bei Technologien und Frameworks verschiebt sich der Fokus von Web- Seiten zu Komponentenansätzen HTTP / HTML Request / Response um irgendwie HTML- Seiten zu generieren JSP + taglibs Trennung von Darstellung und Logik Ajax / JSON / ReST Abkehr von seitenorientierten Anwendungen HTML 5 / CSS 3 Unterstützung für Funktionalitäten, die bisher RIAs vorbehalten waren Servlets / JEE / WARs Abstraktion von HTTP in Java, Servlet (Web) Container, Session Struts MVC Muster für Web-Anwendungen als verlinkte Seiten JSF Serverseitiges Komponentenmodell ähnlich zu Swing Flash RIA Dynamische Effekte + Multimedia Portlets Komponentenmodell, aber nur rudimentäre Kooperation 9

10 Agenda Vorstellung Motivation Architekturkonzepte Umsetzung mit Wicket Diskussion 10

11 STRUKTUR WAS IST DRIN IM FRONTEND? JEE Web Anwendungen realisieren GUIs, aber keine Geschäftslogik 11

12 COMPOSITES UND BOTTOM UP DESIGN Anforderungen und Planung für GUI-Bausteine top-down, aber Konstruktion bottom-up um kontextunabhängige Wiederverwendung zu erreichen Feldebene Feldgruppen Einheitliche Wertebereiche und Prüfungen durch explizite Fachdatentypen z.b. deutsche Bankleitzahl immer sechsstellig numerisch Wiedererkennbare Anordnung z.b. bei Adressdaten Fachdatentypen und Validierungsregeln Feldgruppen mit Funktionalität Dialoge Geschäftsvorgänge Seiten Anwendungen Identifikation wiederkehrender Muster wie z.b. geführte Prozesse oder Aktionen mit expliziter Freigabe Komplette, fachlich geschnittene Funktionalitäten, die einzelne Anwendungsfälle abdecken Einheitliche Darstellung mit gleichförmig genutzten Bereichen (Header, Footer, Navigation, ) Ausführungsumgebung für Geschäftsvorgänge, typischerweise rollenbasiert Wizards Haupteinstiegspunkte Layout Styling 12

13 FELDER UND FELDGRUPPEN Fachliche Datentypen für gleichförmiges Verhalten auf Feldebene. Feldgruppen sind rekursiv schachtelbar Adresserfassung 1 1 Textfeld mit Eingabevalidierung 2 2 Dropdown-Feld für Aufzählungstypen Personenerfassung Schufa-Erfassung Wiederverwendung in verschiedenen anderen Bausteinen 13

14 FELDGRUPPEN Bausteine kennen ihren Ablaufkontext nicht. Verwender kennen nur die Schnittstellen der Bausteine. Zur selben Schnittstelle sind unterschiedliche Varianten von Bausteinen möglich Aufgabe: Erfassung einer validen Bankverbindung bestehend aus Bankleitzahl, Kontonummer und Name des Kreditinstituts Kontonummer Bankleitzahl Modell: Bankverbindung Kreditinstitut Haspa Eingabe: Leeres oder teilbefülltes Bankverbindungsobjekt Ausgabe: Bankleitzahl und Kontonummer konsistent gefüllt, Name des Kreditinstituts passend gesetzt Funktionalität: Bankleitzahl ist gültig, Kontonummer überprüft, Bankname passt zur BLZ Kontonummer Bankleitzahl Kreditinstitut Hamburger Sparkasse Kontonummer Bankleitzahl Kreditinstitut Suchen HSH Nordbank Hamburg Hamburger Sparkasse 14

15 DIALOGE Dialoge beschreiben Abläufe als Abfolge einzelner Ablaufschritte Überweisung durchführen Überweisungsbestätigung Vorlagenauswahl Überweisungserfassung Bankleitzahlsuche Überweisungsdatenanzeige TAN- Legitimation durchführen Überweisungseingabe Überweisungsfreigabe Überweisungsdatenanzeige TAN-Anzeige Die Realisierung von Abläufen ist nicht Aufgabe der einzelnen Ablaufschritte sondern des umfassenden Bausteins Dialoge sind selbst wieder Bausteine, die mit anderen zusammengefasst werden können 15

16 GESCHÄFTSVORGÄNGE UND ANWENDUNGEN Realisierungen von Geschäftsvorfällen können in unterschiedliche Rahmenanwendungen eingesteckt werden GP-Suche GP-Erfassung Girokonto-VK... Komponenten-Baukasten Verkauf Vorsorge, Versicherung Kredite Kreditkarten GP-Suche Spar Baufinanzieru ng Wertpapier/ Investment Finanzstatus Partner/ Kundenmngmt. Girokonto-VK Kundenmanagement Geschäftspartner Beratung Vertriebsreporting Aktionsprodukte Transaktionen Brokerage Filiale Call-Center Abwicklung... Banking GP-Suche Sonstiges Giro & Debitkarten Antragsmanagement Nachrichtenverwaltung Beschwerdemngmt. Verwaltung Auskunft Authentifiz. & Legitimierung Finanzstatus Sparen-VK... Rahmenanwendung übernimmt Seitenlayout und Teile des Look&Feels(Styling) Unterstützung unterschiedlicher Anforderungen durch a) Parametrisierung der Bausteine und b) Rollen/Rechte-Konzept Bei Produktivsetzungen sind immer nur Teile der Software neu und intensiv zu testen Unterstützung unterschiedlicher Release Zyklen Unterschiedliches (virtuelles) Blech ermöglicht zielgerichtete Ressourcenzuordnung 16

17 SEITEN VON ANWENDUNGEN Seiten sind anwendungsspezifisch und definieren den optischen Rahmen für die Einbettung von Geschäftsvorfällen

18 Service Schnitt, Schnittstellen und Modelle Komponentisierte Web-Frontends 18

19 SERVICE-SCHNITT AUS FRONTEND-SICHT Fachlich müssen Funktionalitäten unterschiedlicher Domänen eingebunden werden Überweisung erfassen Überweisung prüfen Überweisung ausführen Buchung initialisieren Limite prüfen TAN entwerten Bankverbindung prüfen Buchung prüfen Limite reduzieren TAN reservieren Buchung ausführen Legende Auftrag protokollieren Bank Konto Kunde Sicherheit Journal 19

20 SERVICE-SCHNITT AUS FRONTEND-SICHT Viele Punkt zu Punkt Verbindungen erhöhen die Komplexität im Frontend (Spezialwissen, Flusssteuerung, Kompensation, ) Überweisung erfassen Überweisung prüfen Überweisung ausführen Bankverbindung prüfen Buchung initialisieren Buchung prüfen Buchung ausführen Limite prüfen Limite reduzieren TAN reservieren TAN entwerten Auftrag protokollieren Bank Konto Kunde Sicherheit Journal 20

21 SERVICE-SCHNITT AUS FRONTEND-SICHT Auf Anwendungsfälle zugeschnittene Services ermöglichen eine deutliche Komplexitätsreduktion für die Frontends Überweisung erfassen Überweisung prüfen Überweisung ausführen prüfen Zahlungsverkehrsmanagement initialisieren ausführen Bankverbindung prüfen Buchung initialisieren Buchung prüfen Buchung ausführen Limite prüfen Limite reduzieren TAN reservieren TAN entwerten Auftrag protokollieren Bank Konto Kunde Sicherheit Journal 21

22 FACHARCHITEKTURMODELL Facharchitekturmodelle ermöglichen die Darstellung des Zusammenspiels von fachlichem Prozess, Frontend, Middlelayer und Backends

23 DATENMODELLE AUS FRONTENDSICHT UND DTOS Wie viele unterschiedlich Modelle braucht es vom Backend bis zur GUI? Middle Layer Frontend Backends GUI GUI GUI GUI GUI Modell (Backing Beans) Modell der Serviceschnittstelle Logik Logik Logik Logik Geschäftsobjektmodell Backend-nahe Modelle JMS JPA JCA WS Backend Modell????? GUI-Bausteine Geschäftslogik Adapter Backend-nahe Modelle sind oft nicht geeignet für die Programmierung von Geschäftslogik (z.b. zu spezialisiert, zu allgemein, zu unterschiedlich) Modell der Service-Schicht stellt vertrag zwischen Middle Layer und Frontend da. Die Schnittstelle inkl. der darin verwendeten Datenobjekte sollten einem formalen Releasing unterliegen (versionierte Schnittstellen) Schnittstelle entkoppelt sich von Geschäftsobjekten durch explizite Transferobjekte (Data Transfer Objects, DTOs), damit interne Änderungen nicht auf die Schnittstelle durchschlagen DTOs können auch direkt als Backing Beans genutzt werden kein eigenes GUI Modell 23

24 Agenda Vorstellung Motivation Architekturkonzepte Umsetzung mit Wicket Diskussion 24

25 UMSETZUNG MIT WICKET Zur Umsetzung einer komponentenbasierten Webapplikation sind komponentenbasierte Frameworks am besten geeignet Historische Entwicklung im JEE Umfeld 1997: Veröffentlichung der Servlet-Spezifikation Umsetzung dynamischer Webinhalte 1999: Servlet-Spezifikation 2.1: Java Server Pages Trennung von Darstellung und Inhalt Gleichzeitig Publikation des Model 2 Anwendungsmusters Strukturierung von Webanwendungen nach Model View Controller Lange Zeit prominentestes Anwendungsframework: Struts Probleme und Herausforderungen Geringe Abstraktion vom Request- Response Paradigma und von der Servlet- Spezifikation Browser Back und Duplicate Submit Problem komplexes Handling des Anwendungszustands Keine Unterstützung von wiederverwendbaren Komponenten Komponentenbasierte Standards und Frameworks Etablierung eines Standards für komponentenbasierte Java-Webanwendungen: JSF Ziel: einfache Entwicklung und Wiederverwendung von Komponenten Open-Source Frameworks wie Tapestry oder Wicket zielen auf eine weiter veranfachte Umsetzung

26 UMSETZUNG MIT WICKET mvn archetype:generate -DarchetypeGroupId=org.apache.wicket -DarchetypeArtifactId=wicket-archetype-quickstart -DarchetypeVersion=1.5.3 web.xml HomePage.html wicket-example WicketApplication.java HomePage.java 26

27 UMSETZUNG MIT WICKET Hello, Bamberg! HomePage.html- Markup <html xmlns:wicket="http://wicket.apache.org/dtds.data/wicket-xhtml1.4- strict.dtd" > <head> <title>wicket Quickstart Archetype Homepage</title> </head> <body> <strong>wicket Quickstart Archetype Homepage</strong> <br/><br/> <span wicket:id="message">message will be here</span> </body> </html> HomePage.java- Implementierung HomePage.java- Implementierung public class HomePage extends WebPage { public HomePage(final PageParameters parameters) { } } add(new Label("message", Hello, Bamberg!")); 27

28 UMSETZUNG MIT WICKET Merkmale und Konzepte Automatische Zustandsverwaltung Komponentenbasiert Separation of Concerns (Präsentation und Logik) Convention over Configuration Wicket Einfache Entwicklung Objektorientiert 28

29 UMSETZUNG MIT WICKET Alles ist ein Baustein Component <abstract> MarkupContainer WebComponent WebMarkupContainer Page <abstract> Image Form Panel WebPage Label 29

30 UMSETZUNG MIT WICKET Modelle stellen die Daten für die Bausteine bereit Das Modell bietet den Komponenten Zugriff auf die Domänenobjekte (in Verteilten Systemen oft über DTOs) Manipulation des Zustands einer Komponente erfolgt über Veränderungen des Modells Page Delegate Domain Component IModel ModelData Component Kunde Konto Adresse 30

31 UMSETZUNG MIT WICKET Detachable Models gewährleisten die effiziente Nutzung von Ressourcen Komponentenbäume werden in Page Maps ( Seitenhistorie) serialisiert Modelle werden in Properties der Komponenten referenziert Person p =...; add(new Label<String>("firstname, new PropertyModel<String>(p, "firstname"))); Implementierungen von IModel müssen serialisierbar sein Wird das Domänenobjekt im Model direkt referenziert, so muss auch dieses serialisierbar sein und der Speicherbedarf pro Session wächst LoadableDetachableModel lädt das Domänenobjekt beim ersten Zugriff gibt es am Ende der Request-Bearbeitung frei private class PersonModel extends LoadableDetachableModel { private long id; public PersonModel(long id) { this.id = id; protected Object load() { return personservice.getpersonbyid(this.id); } } 31

32 UMSETZUNG MIT WICKET Integration von Services über Spring Herausforderung Services sollen mit Hilfe von Spring in Wicket-Komponenten injiziert werden Wicket ist unmanaged, d.h. die Komponenten können an beliebigen Stellen mit new erzeugt werden Wicket-Komponenten werden häufig serialisiert und deserialisiert Ggf. werden die Daten in der Session über die Knoten eines Clusters repliziert Spring ApplicationContext sollte möglichst nur einmal beim Anwendungsstart initialisiert werden Lösung Der ApplicationContext wird über einen in der web.xml zu deklarierenden Listener beim Start der Webanwendung initialisiert: <listener> <listener-class> org.springframework.web. context.contextloaderlistener </listener-class> </listener> Die Dependencies werden in den Komponenten annotiert Ein ComponentInstantiationListener sorgt dafür, dass beim Instanziieren ein serialisierbarerproxy in die Komponenten injiziert wird 32

33 UMSETZUNG MIT WICKET Wicket macht die Realisierung und Nutzung von Komponenten einfach Eigenschaften Umsetzung in Wicket Komponenten stellen prozessorientierte Endbenutzerfunktionalität in Form von Zustand und Verhalten bereit Komponenten sollen in unterschiedlichen Kontexten wiederverwendbar sein, weisen daher im Vergleich zu Objekten eine höhere funktionale Kohäsion auf Komponenten Implementierung einer oder mehrerer Java-Klassen, die von der abstrakten Klasse Component erben (Bausteine) Schreiben einer XHTML- Seite, die das Markup der Komponente realisiert Ggf. Zusammenfassung mehrerer Bausteine zu einem jar (Komponente) Und sonst nichts! 33

34 UMSETZUNG MIT WICKET Implementierung und Integration von Komponenten (1/3) Implementierung public class AdressePanel<T extends Adresse> extends Panel { public AdressePanel(String id, T adresse) { super(id); add(new AdresseForm<T>("adresseForm", adresse)); } private final class AdresseForm<T extends Adresse> extends Form<T> { public AdresseForm(String id, T adresse) { super(id, new CompoundPropertyModel<T>(adresse)); } } } add(new DropDownChoice<String>("land, LandEnum.getEnumValues())); add(new TextField<String>("strasse")); add(new TextField<String>("hausNr")); add(new TextField<String>("plz")); add(new TextField<String>("stadt"); 34

35 UMSETZUNG MIT WICKET Implementierung und Integration von Komponenten (2/3) Markup <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd"> <html xmlns=http://www.w3.org/1999/xhtml xmlns:wicket=http://wicket.sourceforge.net/> <body> <wicket:panel> <form wicket:id="adresseform"> <label>strasse und Hausnummer</label> <input type="text" wicket:id="strasse" class="size-m" /> <input type="text" wicket:id="hausnr" class="size-s" /> <label>postleitzahl, Wohnort</label> <input value="" wicket:id="plz" type="text" class="size-s" /> <input value="" wicket:id="stadt" type="text" class="size-m" /> <label for="ausstellungsdatum">land</label> <select wicket:id="land" class="size-l" > <option>deutschland</option> </select> </form> </wicket:panel> </body> </html> 35

36 UMSETZUNG MIT WICKET Implementierung und Integration von Komponenten (3/3) Verwendung - Markup <html>... <div wicket:id="adressepanel" />... </html> Verwendung - Code final Panel panel = new AdressePanel("adressePanel", kunde.getadresse()); 36

37 UMSETZUNG MIT WICKET Behaviors Ein Behaviorist ein verkapseltes Verhalten, mit der eine Komponente erweitert werden kann und das bei bestimmten Events während des Lebenszyklus aufgerufen wird Hinzufügung von JavaScript Events Hinzufügung von Ajax-Verhalten Beispiel plzfield.add(new AjaxFormComponentUpdatingBehavior("onchange") protected void onupdate(ajaxrequesttarget target) { String stadt = plzsucheservice.find(getmodelobject().getplz()); getmodelobject().setstadt(stadt); target.add(getcomponent().getparent().get("stadt")); }}); Vorgefertigte Behaviors AutoCompleteBehavior AjaxSelfUpdatingTimerBehavior... 37

38 UMSETZUNG MIT WICKET Besondere Herausforderungen im industriellen Umfeld Zustandsverwaltung und Lastverteilung In der Regel Lastverteilung über einen Cluster mit mehreren Servern Wicket hält die Seiten und deren Modelle (den Zustand) transparent für den Entwickler in der HTTPSession. Ältere Seiten werden im Standardfall auf die Festplatte ausgelagert Replikation im Cluster kann teuer werden Lösungsoption: Sticky Sessions und Verwendung eines Datenbankbasierten Second-Level Caches für ältere Seiten Sicherheit Sicherheit ist in Wicket per Design eingebaut URLs enthalten keine sensitiven Daten Komponentenpfade sind relativ zur Session URL-Verschlüsselung erlaubt die Realisierung extrem sicherer Webseiten Die Integration von externen Security-Frameworks (z.b. Spring Security) ist extrem einfach 38

39 Agenda Vorstellung Motivation Architekturkonzepte Umsetzung mit Wicket Diskussion 39

40 Vielen Dank Diskussion Andreas Gärtner Dr. Martin Trapp Komponentisierte Web-Frontends

41 Backup

42 UMSETZUNG MIT WICKET Das Model 2 Anwendungsmuster strukturiert eine Webanwendung in die Bausteine Model, View und Controller Webcontainer Browser Request 1 Servlet 3 Controller 2 Response 5 JSP View 4 JavaBean Model Enterprise Resources 42

Apache Wicket Web Framework: Reinvented the Wheel? Stärken und Schwächen: Ein Erfahrungsbericht aus drei Projekten

Apache Wicket Web Framework: Reinvented the Wheel? Stärken und Schwächen: Ein Erfahrungsbericht aus drei Projekten Apache Wicket Web Framework: Reinvented the Wheel? Stärken und Schwächen: Ein Erfahrungsbericht aus drei Projekten Ralf Kühnlein Freie Universität Berlin Seminar Beiträge zum Software Engineering Übersicht

Mehr

Wicket. Writing a Wicket app is rather more like writing an event-based desktop application than a web application. LShift

Wicket. Writing a Wicket app is rather more like writing an event-based desktop application than a web application. LShift Wicket Writing a Wicket app is rather more like writing an event-based desktop application than a web application. LShift Christian Nienhaus & Moritz Kunze Gliederung Theorie Übersicht Geschichte Struktur

Mehr

Java - Webapplikationen

Java - Webapplikationen Java - Webapplikationen Bestandteile (HTTP,, JSP) Aufbau (Model View Controller) Datenverwaltung (Java Beans, Sessions) Entwicklung (Projektstruktur, Sysdeoplugin für Eclipse) 17. Januar 2006 Jan Hatje

Mehr

Programmierung von Java- Webanwendungen. paluno

Programmierung von Java- Webanwendungen. paluno Programmierung von Java- Webanwendungen Gliederung 1 Vorstellung und Einführung 2 Basiswissen Web 3 XML und JSF- Einführung 4 JSF- Komponenten und RichFaces 5 Wiederholung der ersten Woche 6 JSF- Konzepte

Mehr

Erfahrungen und Erkenntnisse. Klaus Richarz, HBT GmbH

Erfahrungen und Erkenntnisse. Klaus Richarz, HBT GmbH Erfahrungen und Erkenntnisse Klaus Richarz, HBT GmbH Java Enterprise Edition 5.0 JBoss Seam Konsequenzen für Realisierung Qualitätssicherung Build & Deployment Fazit & Empfehlungen JBoss Seam in Projekten,

Mehr

Application Frameworks

Application Frameworks Seminar Software Engineering 1 Grundlagen Agenda Spring Framework Dependency Injection Aspektorientierte Programmierung Datenbankanbindung Modell View Controller Sicherheit Spring vs. Java EE Zusammenfassung

Mehr

Programmierung von Client/Server- Anwendungen

Programmierung von Client/Server- Anwendungen Programmierung von Client/Server- Anwendungen Komponenten des Web-Containers (Java EE) SoSe2015 Prof. Dr. Andreas Schmietendorf 1 Übersicht zur Vorlesung Entwicklung der Java Enterprise Edition Servlets,

Mehr

Inhaltsverzeichnis. Zusammenfassung Wydler

Inhaltsverzeichnis. Zusammenfassung Wydler Inhaltsverzeichnis 1 Multitier Anwendungen... 2 2 J2EE Komponenten... 2 2.1 J2EE Design Patterns for Performance... 2 2.1.1 Design Patterns... 2 2.1.2 Session Façade... 2 2.1.3 Data Transfer Object (Value

Mehr

FH LU JEE Vorlesung SS 2010. Ralf Gitzel ralf_gitzel@hotmail.de

FH LU JEE Vorlesung SS 2010. Ralf Gitzel ralf_gitzel@hotmail.de FH LU JEE Vorlesung SS 2010 Ralf Gitzel ralf_gitzel@hotmail.de 1 Einführung + Organisatorisches Ralf Gitzel ralf_gitzel@hotmail.de 2 Dozent Dr. Ralf Gitzel Promotion an der Universität Mannheim in Wirtschaftsinformatik

Mehr

Komponentenorientierte Software-Entwicklung. Seite 1 / 42

Komponentenorientierte Software-Entwicklung. Seite 1 / 42 Seite 1 / 42 Wiederholung Messaging Java Messaging Service (JMS) Pub/Sub P2P Messaging Middleware XMPP-Protokoll Java API for XML-Processing (JAXP) Java API for XML-Binding Webservices / SOA Simple Object

Mehr

Entwicklung von Web-Anwendungen auf JAVA EE Basis

Entwicklung von Web-Anwendungen auf JAVA EE Basis Entwicklung von Web-Anwendungen auf JAVA EE Basis Java Enterprise Edition - Überblick Prof. Dr. Bernhard Schiefer Inhalt der Veranstaltung Überblick Java EE JDBC, JPA, JNDI Servlets, Java Server Pages

Mehr

Java Server Pages 2 und Benutzerdefinierte Tags. Strahil Yordanov

Java Server Pages 2 und Benutzerdefinierte Tags. Strahil Yordanov Java Server Pages 2 und Benutzerdefinierte Tags Strahil Yordanov Überblick Einleitung JSP im Kontext von J2EE JSP2 Benutzerdefinierte Tags Zusammenfassung Einleitung Java Server Pages ist eine Technik

Mehr

JSP und Servlet Programmierung

JSP und Servlet Programmierung Seminarunterlage Version: 5.02 Copyright Version 5.02 vom 1. März 2013 Dieses Dokument wird durch die veröffentlicht. Copyright. Alle Rechte vorbehalten. Alle Produkt- und Dienstleistungs-Bezeichnungen

Mehr

Praktikum Datenbanksysteme. Ho Ngoc Duc IFIS - Universität zu Lübeck 01.06.2005

Praktikum Datenbanksysteme. Ho Ngoc Duc IFIS - Universität zu Lübeck 01.06.2005 Praktikum Datenbanksysteme Ho Ngoc Duc IFIS - Universität zu Lübeck 01.06.2005 Tomcat-Installation $JAVA_HOME (z.b. /home/dbp00/j2sdk1.4.2) $CATALINA_HOME (/home/dbp00/jakarta-tomcat-4) Skripte zum Start/Stop:

Mehr

Workshop Java Webentwicklung Tapestry. Ulrich Stärk

Workshop Java Webentwicklung Tapestry. Ulrich Stärk Workshop Java Webentwicklung Tapestry Ulrich Stärk Webanwendungen Antwort im Browser des Benutzers sichtbar Anfrage geht ein Antwort rendern Anfrage an passenden Code weiterleiten 2 Servlets Servlet wird

Mehr

Erstellung eines Frameworks für Shop Systeme im Internet auf Basis von Java

Erstellung eines Frameworks für Shop Systeme im Internet auf Basis von Java Erstellung eines Frameworks für Shop Systeme im Internet auf Basis von Java Präsentation zur Diplomarbeit von Übersicht Java 2 Enterprise Edition Java Servlets JavaServer Pages Enterprise JavaBeans Framework

Mehr

Evolution der Web-Entwicklung nach AJAX

Evolution der Web-Entwicklung nach AJAX Evolution der Web-Entwicklung nach AJAX Vortrag BMW Messe, Oktober 2007 Rudolf Lindner, Projektleiter Technologie F&F GmbH Was ist eine WEB-Anwendung? Datenbank Datenbank Server Logik Prozesse Datenbank

Mehr

Jakarta Turbine Ein Open Source Framework fÿr Webanwendungen. KNF Kongre 2001 Henning P. Schmiedehausen

Jakarta Turbine Ein Open Source Framework fÿr Webanwendungen. KNF Kongre 2001 Henning P. Schmiedehausen <henning@apache.org> Jakarta Turbine Ein Open Source Framework fÿr Webanwendungen Henning P. Schmiedehausen Turbine - ein berblick Open Source unter Apache License 100% pure Java, Java 2 (JDK 1.2+) Servlet-basiertes

Mehr

Java 2, Enterprise Edition Einführung und Überblick

Java 2, Enterprise Edition Einführung und Überblick Universität aiserslautern AG Datenbanken und Informationssysteme Seminar Datenbank-Aspekte des E-Commerce Java 2, Enterprise Edition Einführung und Überblick m_husema@informatik.uni-kl.de Vortragsinhalte

Mehr

Agenda. Clients aus drei verschiedenen Perspektiven: Was ist ein Dialog? Komponentenarchitektur innerhalb eines Dialoges

Agenda. Clients aus drei verschiedenen Perspektiven: Was ist ein Dialog? Komponentenarchitektur innerhalb eines Dialoges Komponentenbasierte Client-Architektur Hamburg, 16.11.2007 Bernd Olleck IT-Beratung Olleck Agenda Clients aus drei verschiedenen Perspektiven: Technische Infrastruktur Fachliche Sicht Aufgaben eines Clients

Mehr

business.people.technology.

business.people.technology. business.people.technology. Portalserver meets SOA: State of the Portal Art Andreas Hartmann 18.06.2010 2 Portalserver meets SOA: State of the Portal Art 18.06.2010 Agenda Baukastensystem zur Integration

Mehr

Agenda. Einleitung. Einbinden von JSF AJAX Beispiele Komponenten Entwicklung PrimeFaces Praktikum. Was ist JSF Aufbau und Techniken HTML vs.

Agenda. Einleitung. Einbinden von JSF AJAX Beispiele Komponenten Entwicklung PrimeFaces Praktikum. Was ist JSF Aufbau und Techniken HTML vs. JavaServer Faces E-Commerce (WS 2011/12) Fachhochschule Münster FB02 Elektrotechnik und Informatik Referenten: Matthias Wellmeyer, Sven Wermers, Malte Wesker Agenda Einleitung Was ist JSF Aufbau und Techniken

Mehr

Mit OSGi Webanwendungen entwickeln Was geht, was nicht?

Mit OSGi Webanwendungen entwickeln Was geht, was nicht? Mit OSGi Webanwendungen entwickeln Was geht, was nicht? Peter Roßbach (Systemarchitekt) Gerd Wütherich (Freier Softwarearchitekt) Martin Lippert (akquinet it-agile GmbH) 2009 by P. Roßbach, G. Wütherich,

Mehr

Web-Anwendungsentwicklung mit dem Delivery Server

Web-Anwendungsentwicklung mit dem Delivery Server Web-Anwendungsentwicklung mit dem Delivery Server Java-Framework auf Basis der Open API Bernfried Howe, Webertise Consulting GmbH WEBertise Consulting Dipl. Informatiker (Wirtschaftsinformatik) 2001-2010

Mehr

Der IBM Websphere Portalserver

Der IBM Websphere Portalserver Der IBM Websphere Portalserver Ergebnisse aus dem Universitäts-Praxis-Projekt 2001/2002 Vortrag von Il-Hyun Kim und Horst Rechner am 19. Juli 2002 Weiterer Teilnehmer am UPP: Clemens Oertel Betreuer: Dipl.-Phys.

Mehr

Moderne Web- Anwendungen mit

Moderne Web- Anwendungen mit Moderne Web- Anwendungen mit Oliver.Damm@akquinet.de September 2013 Web- Anwendungen mit Vaadin???

Mehr

Übungsaufgabe Transaktion als Middleware

Übungsaufgabe Transaktion als Middleware Übungsaufgabe Transaktion als Middleware und Java Persistence API Client/Server Abstraktes Komponentenmodell Entscheidende Punkte Erweiterung der Invoke-Methode Context-Verwaltung Transaktionsbehandlung

Mehr

Webentwicklung mit Vaadin 7. Theoretische und praktische Einführung in Vaadin 7. Christian Dresen, Michael Gerdes, Sergej Schumilo

Webentwicklung mit Vaadin 7. Theoretische und praktische Einführung in Vaadin 7. Christian Dresen, Michael Gerdes, Sergej Schumilo Webentwicklung mit Vaadin 7 Theoretische und praktische Einführung in Vaadin 7 Christian Dresen, Michael Gerdes, Sergej Schumilo Agenda Allgemeines Architektur Client-Side Server-Side Vaadin UI Components

Mehr

Session Beans & Servlet Integration. Ralf Gitzel ralf_gitzel@hotmail.de

Session Beans & Servlet Integration. Ralf Gitzel ralf_gitzel@hotmail.de s & Servlet Integration Ralf Gitzel ralf_gitzel@hotmail.de 1 Themenübersicht Ralf Gitzel ralf_gitzel@hotmail.de 2 Übersicht Motivation Das Interface Stateful und Stateless s Programmierung einer Stateful

Mehr

Einsatz von Scalable Vector Graphics (SVG) zur Modellrepräsentation und -manipulation in Web-Anwendungen mit J2EE

Einsatz von Scalable Vector Graphics (SVG) zur Modellrepräsentation und -manipulation in Web-Anwendungen mit J2EE Einsatz von Scalable Vector Graphics (SVG) zur Modellrepräsentation und -manipulation in Web-Anwendungen mit J2EE www.arsnova.de ARS NOVA Technical Workshop, 24. Juni 2004 1 Agenda Motivation und Zielsetzung

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

Komponenten & Hypermedia Seminar Prof. Dr. Frank Thiesing Struts Java-Framework für Web-Applikationen. Referenten: Fabian Bartelt Jens de Witt

Komponenten & Hypermedia Seminar Prof. Dr. Frank Thiesing Struts Java-Framework für Web-Applikationen. Referenten: Fabian Bartelt Jens de Witt Komponenten & Hypermedia Seminar Prof. Dr. Frank Thiesing Struts Java-Framework für Web-Applikationen Referenten: Fabian Bartelt Jens de Witt - Struts 1 Inhaltsverzeichnis Was ist Struts? Vorkenntnisse

Mehr

Dirk Reinemann Working Student Sales Consulting

Dirk Reinemann Working Student Sales Consulting JDeveloper 12c in 30 Minutes Dirk Reinemann Working Student Sales Consulting Program Agenda 1. Integrated Development Environment 2. Java Development 3. Web Development 4. Team Development 5. Application

Mehr

Web- Applikationen. in Java-Web

Web- Applikationen. in Java-Web Einführung in Java-Web Web- Applikationen Frank Huber Humboldt-Universität zu Berlin Allgemeines Java: Programmierung ist Programmierung nach Konvention Insbesondere bei Web-Applikationen wurde eine API

Mehr

Herzlich Willkommen! eine praxisnahe Übersicht. Mit Java ins Web - mb@bebox.franken.de. 26.11.2000 (c) Michael Behrendt -

Herzlich Willkommen! eine praxisnahe Übersicht. Mit Java ins Web - mb@bebox.franken.de. 26.11.2000 (c) Michael Behrendt - Herzlich Willkommen! Mit Java ins Web - eine praxisnahe Übersicht 1 Wer bin ich? Michael Behrendt, 21, Nürnberg kurzer Lebenslauf: 1991 Erster Rechner: Commodore C128 1995 Ausbildung zum Datenverarbeitungskaufmann

Mehr

Einsatz und Grenzen von Java Server Faces 2.0

Einsatz und Grenzen von Java Server Faces 2.0 Kai Wähner München 09. September 2010 Einsatz und Grenzen von Java Server Faces 2.0 Einordnung von JSF in JEE 9/11/2010 Seite 2 Einordnung von JSF in JEE 9/11/2010 Seite 3 "Überblick" über JSF 9/11/2010

Mehr

Grails. Weiterführende Themen zu Internet- und WWW-Technologien. Matthias Springer. 06. Juni 2011

Grails. Weiterführende Themen zu Internet- und WWW-Technologien. Matthias Springer. 06. Juni 2011 Weiterführende Themen zu Internet- und WWW-Technologien 06. Juni 2011 Übersicht 1 Was ist? 2 Übersicht über 3 MVC-Konzept 4 Groovy Beispiele 5 Tutorial: Kleiner Notizblock Web Application Framework Übersicht

Mehr

Online Banking System

Online Banking System Online Banking System Pflichtenheft im Rahmen des WI-Praktikum bei Thomas M. Lange Fachhochschule Giessen-Friedberg Fachbereich MNI Studiengang Informatik Erstellt von: Eugen Riske Yueksel Korkmaz Alper

Mehr

Integrating Architecture Apps for the Enterprise

Integrating Architecture Apps for the Enterprise Integrating Architecture Apps for the Enterprise Ein einheitliches Modulsystem für verteilte Unternehmensanwendungen Motivation und Grundkonzept Inhalt Problem Ursache Herausforderung Grundgedanke Architektur

Mehr

Web 2.0 Software-Architekturen

Web 2.0 Software-Architekturen Web 2.0 Software-Architekturen Servlets als Controller einer MVC Web Architektur Prof. Dr. Nikolaus Wulff HTTP und HTML Das HyperText TransferProtokoll (HTTP) beschreibt eine einfache verbindungslose Kommunikation,

Mehr

XPages Good to know. Benjamin Stein & Pierre Hein Stuttgart 7. Mai 2015

XPages Good to know. Benjamin Stein & Pierre Hein Stuttgart 7. Mai 2015 XPages Good to know Benjamin Stein & Pierre Hein Stuttgart 7. Mai 2015 Agenda 1. Einführung Was sind XPages? 2. Allgemeine Tipps Allgemeine Tipps für die Verwendung von XPages 3. Designer Tipps Tipps für

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

Faclets. Eine alternative View Technologie um JSF Applikationen OHNE JSP zu entwickeln Wird unter java.net gehostet Open Source, CDDL Lizenz

Faclets. Eine alternative View Technologie um JSF Applikationen OHNE JSP zu entwickeln Wird unter java.net gehostet Open Source, CDDL Lizenz Facelets Faclets Eine alternative View Technologie um JSF Applikationen OHNE JSP zu entwickeln Wird unter java.net gehostet Open Source, CDDL Lizenz (COMMON DEVELOPMENT AND DISTRIBUTION LICENSE) Von Jacob

Mehr

UI-Architekturen mit JSF

UI-Architekturen mit JSF www.jsf-academy.com UI-Architekturen mit JSF - JSF ist mehr als nur Syntax - Copyright 2011, Andy Bosch, www.jsf-academy.com Slide 1 Agenda Warum reden wir überhaupt über UI-Architektur? Technologien und

Mehr

Design Patterns MVC. Marcus Köhler Markus Merath Axel Reusch. Design Patterns MVC Marcus Köhler Markus Merath Axel Reusch Seite 1

Design Patterns MVC. Marcus Köhler Markus Merath Axel Reusch. Design Patterns MVC Marcus Köhler Markus Merath Axel Reusch Seite 1 Design Patterns MVC Marcus Köhler Markus Merath Axel Reusch Design Patterns MVC Marcus Köhler Markus Merath Axel Reusch Seite 1 Agenda! Allgemeines! Aufgabenverteilung! Alltagsbeispiel! Beurteilung! Konkretes

Mehr

Struts 2 Das Imperium schlägt zurück?

Struts 2 Das Imperium schlägt zurück? Struts 2 Das Imperium schlägt zurück? Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim Tobias Kieninger www.oio.de info@oio.de Java, XML und Open Source seit 1998 ) Software

Mehr

Gegenseitige Beeinflussungen von Testautomatisierung, Testmanagement und Entwicklung

Gegenseitige Beeinflussungen von Testautomatisierung, Testmanagement und Entwicklung Gegenseitige Beeinflussungen von Testautomatisierung, Testmanagement und Entwicklung Jan Düttmann Archimedon Software + Consulting GmbH & Co. KG Marienstraße 66 32427 Minden Stephan Kleuker Hochschule

Mehr

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

C O C O O N. Wo ist Cocoon in die Apache Projekte einzureihen? C O C O O N ein Web-Framework der Apache Software Foundation http://www.apache.org Wo ist Cocoon in die Apache Projekte einzureihen? Apache Server sehr leistungsfähiger HTTP-Server Tomcat Server Referenzimplementierung

Mehr

UI-Architekturen mit JSF

UI-Architekturen mit JSF www.jsf-academy.com UI-Architekturen mit JSF - JSF ist mehr als nur Syntax Andy Bosch Copyright 2012, Andy Bosch, www.jsf-academy.com Slide 1 Agenda Warum reden wir überhaupt über UI-Architektur? Technologien

Mehr

MICHAEL RÜGER. Abschluss Diplom Fach Informatik. Geburtsjahr 1985 Profil-Stand April 2015

MICHAEL RÜGER. Abschluss Diplom Fach Informatik. Geburtsjahr 1985 Profil-Stand April 2015 MICHAEL RÜGER Abschluss Diplom Fach Informatik Geburtsjahr 1985 Profil-Stand April 2015 Triona Information und Technologie GmbH Wilhelm-Theodor-Römheld-Str. 14 55130 Mainz Fon +49 (0) 61 31 9 21-122 Fax

Mehr

Spring Dynamic Modules for OSGi Service Platforms

Spring Dynamic Modules for OSGi Service Platforms Gerd Wütherich freiberuflicher Softwarearchitekt Spring Dynamic Modules for OSGi Service Platforms Server Anwendungen mit Spring und Eclipse Equinox Agenda OSGi Technologie: OSGi Technologie im Überblick

Mehr

Java Server Pages (JSP)

Java Server Pages (JSP) Überblick über Internet-Technologien Server-Technologien Datenbankkopplung Servlets JSP PHP CGI XML+XSL Dokumentsprachen Client-PGM ruft DB-Server Web-Server ruft Datenbankserver HTML+Javascript HTML+Applets

Mehr

OWASP Stammtisch München Sep 2014 XSS und andere Sicherheitslücken aus der Perspektive des Programmcodes

OWASP Stammtisch München Sep 2014 XSS und andere Sicherheitslücken aus der Perspektive des Programmcodes OWASP Stammtisch München Sep 2014 XSS und andere Sicherheitslücken aus der Perspektive des Programmcodes 1 XSS: Cross-Site Scripting 1.) Es gelangen Daten in den Web-Browser, die Steuerungsinformationen

Mehr

Schritt 4: Hallo Enterprise Bean

Schritt 4: Hallo Enterprise Bean Prof. Dr. Th. Letschert FB MNI JEE Schritt 4: Hallo Enterprise Bean Einstieg: EJBs erzeugen und nutzen Meine erstes EJB Projekt Enterprise Beans sind eine Backend Technologie, die mit unterschiedlichen

Mehr

JSF (JavaServer Faces) Erstellen einer Webseite

JSF (JavaServer Faces) Erstellen einer Webseite Universität Bayreuth Lehrstuhl für Angewandte Informatik IV Datenbanken und Informationssysteme Prof. Dr.-Ing. Jablonski JSF (JavaServer Faces) Erstellen einer Webseite Dipl. Inf. Manuel Götz Dipl. Inf.

Mehr

JBoss 7 als Plattform für hochverfügbare Anwendungen

JBoss 7 als Plattform für hochverfügbare Anwendungen JBoss 7 als Plattform für hochverfügbare Anwendungen Orientierungspunkt 04/2013 24.05.2013, OIO Dirk Weil, GEDOPLAN GmbH Dirk Weil GEDOPLAN GmbH, Bielefeld Java EE seit 1998 Konzeption und Realisierung

Mehr

Komponentenbasierte Softwareentwicklung mit PHP. Oliver Schlicht - bitexpert

Komponentenbasierte Softwareentwicklung mit PHP. Oliver Schlicht - bitexpert Komponentenbasierte Softwareentwicklung mit PHP Oliver Schlicht - bitexpert Überblick 1. Was ist eine Komponente? 2. Entwicklung eines Beispieldesigns 3. Dependency Injection 4. DI Container Garden 5.

Mehr

Einführung Servlets. JEE Vorlesung Teil 2. Ralf Gitzel

Einführung Servlets. JEE Vorlesung Teil 2. Ralf Gitzel Einführung Servlets JEE Vorlesung Teil 2 Ralf Gitzel ralf_gitzel@hotmail.de 1 Übersicht Wiederholung Hello World Blick in die Details Servlet Programmierung Potentielle Fehler Lernziele Gruppenübung 2

Mehr

Web-Programmierung (WPR)

Web-Programmierung (WPR) Web-Programmierung (WPR) Vorlesung XII. Vergleich Server-Plattformen mailto:wpr@gruner.org 1 Technologien Perl/CGI Einsatzgebiete: Kleine Websites, semiprofessioneller Bereich Pro's: Plattform/Serverneutralität

Mehr

Testen von graphischen Benutzeroberflächen. 26. Juni 2013

Testen von graphischen Benutzeroberflächen. 26. Juni 2013 Testen von graphischen Benutzeroberflächen 26. Juni 2013 Überblick Testarten Methoden-, Klassen-, Komponenten-, Systemtests Motivation für automatisches Testen von graphischen Benutzeroberflächen Entwicklungsprinzipien

Mehr

WEBAPPLIKATIONEN MIT PHP. Wo gibt es Hilfe? Wie fang ich an?

WEBAPPLIKATIONEN MIT PHP. Wo gibt es Hilfe? Wie fang ich an? WEBAPPLIKATIONEN MIT PHP Wo gibt es Hilfe? Wie fang ich an? Tools Webapplikationen bestehen aus Textdateien Lassen sich in Texteditoren schreiben Alternativen: Eclipse (PDT) Netbeans (Dynamic Languages)

Mehr

Server-centric vs. Client-centric Web Applications. BITKOM Software Summit 2014, Frankfurt

Server-centric vs. Client-centric Web Applications. BITKOM Software Summit 2014, Frankfurt Server-centric vs. Client-centric Web Applications BITKOM Software Summit 2014, Frankfurt Alexander Rühl SyroCon Competence Lead M2M & Web Applications Diplom-Informatiker (FH) 10 Jahre bei SyroCon und

Mehr

ORACLE Business Components for Java (BC4J) Marco Grawunder

ORACLE Business Components for Java (BC4J) Marco Grawunder ORACLE Business Components for Java (BC4J) Marco Grawunder Gliederung 2 Probleme von J2EE/EJB J2EE-Pattern Lösungsansatz: BC4J Architektur einer BC4J-Anwendung Komponenten Entity Objects View Objects Application

Mehr

Applets Belebung von Webseiten. Dipl.-Ing. Wolfgang Beer

Applets Belebung von Webseiten. Dipl.-Ing. Wolfgang Beer Applets Belebung von Webseiten Dipl.-Ing. Wolfgang Beer Was sind Applets? Java Klassen, die spezielle Richtlinien befolgen, um: "in Internet-Browsern lauffähig zu sein" Somit ist, komplexere Funktionalität,

Mehr

Praxisbuch Wicket. Professionelle Web-2.0-Anwendungen entwickeln. von Michael Mosmann. 1. Auflage. Hanser München 2009

Praxisbuch Wicket. Professionelle Web-2.0-Anwendungen entwickeln. von Michael Mosmann. 1. Auflage. Hanser München 2009 Praxisbuch Wicket Professionelle Web-2.0-Anwendungen entwickeln von Michael Mosmann 1. Auflage Hanser München 2009 Verlag C.H. Beck im Internet: www.beck.de ISBN 978 3 446 41909 4 Zu Leseprobe schnell

Mehr

Webinar: Einführung in ICEfaces

Webinar: Einführung in ICEfaces Webinar: Einführung in ICEfaces präsentiert von VOIP-Audio ist standardmässig aktiviert Alternatives Einwählen: +41 (0) 415 0008 65 ICESOFT TECHNOLOGIES INC ICESOFT Donnerstag, TECHNOLOGIES 26. März 2009

Mehr

Dokumentation Externe Anzeige von Evento Web Dialogen

Dokumentation Externe Anzeige von Evento Web Dialogen Dokumentation Externe Anzeige von Evento Web Dialogen Autor: Roger Guillet Telefon 058 404 83 57 E-Mail roger.guillet@crealogix.com CREALOGIX Evento Postfach 112, Baslerstrasse 60 CH-8066 Zürich Telefon

Mehr

Wir bringen Ihre Notes/Domino Anwendungen sicher ins Web 19.11.2015, Bilster Berg Drive Resort Michael Steinhoff, agentbase AG. www.agentbase.

Wir bringen Ihre Notes/Domino Anwendungen sicher ins Web 19.11.2015, Bilster Berg Drive Resort Michael Steinhoff, agentbase AG. www.agentbase. Wir bringen Ihre Notes/Domino Anwendungen sicher ins Web 19.11.2015, Bilster Berg Drive Resort Michael Steinhoff, agentbase AG www.agentbase.de 1 Agenda Grundlagen Modernisierung Möglichkeiten mit Domino

Mehr

WebObjects. Dirk Schober Senior Software Trainer AppleServices EMEA. Was ist eigentlich ein Application Server?

WebObjects. Dirk Schober Senior Software Trainer AppleServices EMEA. Was ist eigentlich ein Application Server? Objects Dirk Schober Senior Software Trainer leservices EMEA Fragen über Fragen Was ist eigentlich ein lication? Welche lication gibt es sonst noch? Was kostet sowas? Wer setzt denn eine solche Technologie

Mehr

M i t a r b e i t e r p r o f i l (Stand: August 09)

M i t a r b e i t e r p r o f i l (Stand: August 09) M i t a r b e i t e r p r o f i l (Stand: August 09) KB-M1-Java134 Schwerpunkte / Spezialisierung: Softwareentwickler Java / J2EE Swing JSF JavaScript Verfügbarkeit (skalierbar): Ab sofort Ausbildung:

Mehr

Enterprise JavaBeans Überblick

Enterprise JavaBeans Überblick Enterprise JavaBeans Überblick 1. Überblick Java EE 5 und Komponententechnologien 3. Enterprise JavaBeans Architektur 4. Ressourcen Management und Primäre Services 5. Java Persistence: Entity Manager 6.

Mehr

Existierende Systeme I Bibliotheken & Frameworks

Existierende Systeme I Bibliotheken & Frameworks Projektgruppe: Generierung von Webanwendungen aus visuellen Spezifikationen Existierende Systeme I Bibliotheken & Frameworks Von Christian Schneider Paderborn, den 18.06.2004 Übersicht Motivation Dynamische

Mehr

3 Wicket-Überblick. 3.1 Aufbau einer Wicket-Anwendung

3 Wicket-Überblick. 3.1 Aufbau einer Wicket-Anwendung 33 3 Wicket-Überblick In den folgenden Abschnitten werden die Bausteine von Wicket vorgestellt, die das Wicket-Programmiermodell bilden. Es wird gezeigt, welche Abstraktionen Wicket gegenüber der direkten

Mehr

Die Technologie der Mumie

Die Technologie der Mumie Die Technologie der Mumie Tilman Rassy Ruedi Seiler Technischen Universität Berlin Fakultät II Mathematik und Naturwissenschaften Institut für Mathematik Vortrag an der ETH Zürich 27. Juli 2006 1 Design-Prizipien

Mehr

Um asynchrone Aufrufe zwischen Browser und Web Anwendung zu ermöglichen, die Ajax Hilfsmittel DWR ist gebraucht.

Um asynchrone Aufrufe zwischen Browser und Web Anwendung zu ermöglichen, die Ajax Hilfsmittel DWR ist gebraucht. Technisches Design Inhalt Design Übersicht Menü und DispatcherServlet DWR Servlet Viewer Servlets Controllers Managers Sicherheit Anwendung Architektur Component Diagram Deployment Diagram Komponente Sequence

Mehr

MOC 20486 - Entwicklung von ASP.NET MVC 4 Webapplikationen

MOC 20486 - Entwicklung von ASP.NET MVC 4 Webapplikationen MOC 20486 - Entwicklung von ASP.NET MVC 4 Webapplikationen Kompakt-Intensiv-Training Diese Schulung bereitet Sie optimal auf die MOC-Zertifzierung vor. Zu Beginn der Schulung erhalten Sie einen Überblick

Mehr

Hibernate Das Praxisbuch für Entwickler

Hibernate Das Praxisbuch für Entwickler Sebastian Hennebrüder 2008 AGI-Information Management Consultants May be used for personal purporses only or by libraries associated to dandelon.com network. Hibernate Das Praxisbuch für Entwickler Galileo

Mehr

Servlet-zentrierte Architektur von Web-Anwendungen mit Java Servlets, Java Server Pages (JSPs) und Java Beans

Servlet-zentrierte Architektur von Web-Anwendungen mit Java Servlets, Java Server Pages (JSPs) und Java Beans Projekt Entwicklung verteilter Softwaresysteme mit Web Services SoSe 2008 - Java Server Pages und Servlets - 7. April 2008 Verteilte Systeme und Informationssysteme (VSIS) Department Informatik Universität

Mehr

Kategorisierung von Web-Frameworks im Java-Umfeld

Kategorisierung von Web-Frameworks im Java-Umfeld Unüberschaubare Auswahl im Alltag 1/11/2011 Seite 2 Unüberschaubare Auswahl bei Web-Frameworks 1/11/2011 Seite 3 Viele gute Artikel in Fachzeitschriften 1/11/2011 Seite 4 Flame War unerwünscht, aber überall

Mehr

Java Frameworks im Vergleich - ADF vs. Grails vs. Spring

Java Frameworks im Vergleich - ADF vs. Grails vs. Spring Java Frameworks im Vergleich - ADF vs. Grails vs. Spring Frank Szilinski esentri software GmbH Karlsruhe Schlüsselworte: ADF, Java, JEE, JSF, Grails, Spring, Open Source, Rapid Application Development

Mehr

Leichtgewichtige Web 2.0-Architektur für komplexe Business-Anwendungen Nicolas Moser PRODYNA AG

Leichtgewichtige Web 2.0-Architektur für komplexe Business-Anwendungen Nicolas Moser PRODYNA AG 05.07.2012 Leichtgewichtige Web 2.0-Architektur für komplexe Business-Anwendungen Nicolas Moser PRODYNA AG Agenda 01 Einführung 02 Architektur 03 Lösungen 04 Zusammenfassung 2 2 Agenda 01 Einführung 02

Mehr

JSF Erstellen einer einfachen Bankanwendung mit Kontoübersicht und Überweisung

JSF Erstellen einer einfachen Bankanwendung mit Kontoübersicht und Überweisung Universität Bayreuth Lehrstuhl für Angewandte Informatik IV Datenbanken und Informationssysteme Prof. Dr.-Ing. Jablonski JSF Erstellen einer einfachen Bankanwendung mit Kontoübersicht und Überweisung Dipl.

Mehr

Web-Anwendungen mit Arquillian testen

Web-Anwendungen mit Arquillian testen Michael Kotten open knowledge @michaelkotten @_openknowledge Wozu denn testen? Ich mach doch keine Fehler! Wozu denn testen? > Notwendig bei komplexen Systemen > Sicherung von > Qualität > Funktionalität

Mehr

InQMy Application Server Flexible Softwareinfrastruktur für verteilte Anwendungen

InQMy Application Server Flexible Softwareinfrastruktur für verteilte Anwendungen InQMy Application Server Flexible Softwareinfrastruktur für verteilte Anwendungen IN-Q-My Title Company (Name) / 1 Agenda Firmenübersicht ebusiness Evolution InQMy Application Server Architektur Zusammenfassung

Mehr

Design Patterns 2. Model-View-Controller in der Praxis

Design Patterns 2. Model-View-Controller in der Praxis Design Patterns 2 Model-View-Controller in der Praxis Design Patterns Oft Schablonen für eine Klassenstruktur... aber nicht immer! Dahinterliegende Konzepte wichtiger als wörtliche Umsetzung Pattern werden

Mehr

Einleitung. Gliederung. Struts-Framework. Model-View-Controller-Pattern

Einleitung. Gliederung. Struts-Framework. Model-View-Controller-Pattern Struts-Framework Model-View-Controller-Pattern STRUTS Open Source Web Application Framework Unterprojekt des Apache Jakarta Basierend auf: JSP, Servlets, JavaBeans Model View Controller Architektur Dipl.-Inf.

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

Praktikum Datenbanken und verteilte Systeme SS Java Server Pages und Servlets -

Praktikum Datenbanken und verteilte Systeme SS Java Server Pages und Servlets - Praktikum Datenbanken und verteilte Systeme SS 2008 - Java Server Pages und Servlets - Verteilte Systeme und Informationssysteme (VSIS) Department Informatik Universität Hamburg Infrastruktur vsispoolx

Mehr

Legacy Web-Apps mit AngularJS pimpen

Legacy Web-Apps mit AngularJS pimpen Legacy Web-Apps mit AngularJS pimpen Über uns Jan Blankenhorn und Philipp Burgmer Software Developers w11k.com / thecodecampus.de > Esslingen / Stuttgart Schulungen, Projekt-Kickoff Consulting, Softwareentwicklung

Mehr

Javabasierte Webtechnologien Web Application Framework Turbine

Javabasierte Webtechnologien Web Application Framework Turbine Javabasierte Webtechnoogien Web Appication Framework Turbine 1 Marce Genzmehr Überbick Einführung Was ist enthaten? MVC Umsetzung Aufbau Beispie Fazit Queen 2 Marce Genzmehr Einführung Seit 1999 in Entwickung

Mehr

Web Dynpro / FloorPlanManager / NWBC

Web Dynpro / FloorPlanManager / NWBC Web Dynpro / FloorPlanManager / NWBC Bernd Zehentner TECHNISCHE SAP BERATUNG bze@snapconsult.com snapconsult.com Norbert Prager TECHNISCHE SAP BERATUNG npr@snapconsult.com snapconsult.com 16.06.2014 SNAP

Mehr

Java zur Realisierung von Internetanwendungen

Java zur Realisierung von Internetanwendungen Java zur Realisierung von Internetanwendungen Elementare Web-Programmierung Prof. Dr. Bernhard Schiefer HTTP Web-Browser Web-Browser GET http://www.zw.fh-kl.de/beispiel.htm beispiel

Mehr

Von SAP R/3 zu mysap ERP und NetWeaver

Von SAP R/3 zu mysap ERP und NetWeaver Von SAP R/3 zu mysap ERP und NetWeaver Bremerhaven 06.05.2006 T4T Bremerhaven 1 Inhaltsverzeichnis 1. Motivation für SAP NetWeaver 2. SAP R/3 mysap ERP und SAP Business Suite 3. Application Platform T4T

Mehr

Oliver Zeigermann, Stefan Toth embarc GmbH. Flux Facebooks Beitrag zur UI- Architektur der Zukunft

Oliver Zeigermann, Stefan Toth embarc GmbH. Flux Facebooks Beitrag zur UI- Architektur der Zukunft Oliver Zeigermann, Stefan Toth embarc GmbH Flux Facebooks Beitrag zur UI- Architektur der Zukunft UI-Architektur Warum? User Experience wird wichtiger Rich Client Optionen werden rar Es gibt mehrere Philosophien

Mehr

Inhalt: Konfiguration: web.xml ; server.xml Workflow: Weiterleitung von Requests Lektion II-IV Lektion V-VI

Inhalt: Konfiguration: web.xml ; server.xml Workflow: Weiterleitung von Requests Lektion II-IV Lektion V-VI Servlet II Inhalt: Konfiguration: web.xml ; server.xml Workflow: Weiterleitung von Requests Lektion II-IV Lektion V-VI 3-1 1. Grundlagen 2. Servlets 3. JSP 4 1.1. JAR Files 4 1.2. TCP/IP, Sockels 4 1.3.

Mehr

Clustering von Application Servern am Beispiel von JBoss 3.2

Clustering von Application Servern am Beispiel von JBoss 3.2 Clustering von Application Servern am Beispiel von JBoss 3.2 Cluster Workshop iternum GmbH Alexanderstraße 7 60489 Frankfurt/Main www.iternum.com Agenda Clustertechnik allgemein Was ist Clustering? Gründe

Mehr

Schlussbewertung FB VI SOFTWAREPROJEKT II WS 09/10 TEAM. Alexander Kalden Dominik Eckelmann Marcel Pierry Julian Heise Besha Taher

Schlussbewertung FB VI SOFTWAREPROJEKT II WS 09/10 TEAM. Alexander Kalden Dominik Eckelmann Marcel Pierry Julian Heise Besha Taher Schlussbewertung FB VI SOFTWAREPROJEKT II WS 09/10 TEAM Alexander Kalden Dominik Eckelmann Marcel Pierry Julian Heise Besha Taher 729631 745097 736477 745011 741297 Inhalt Schlussbewertung... 3 Bewertung

Mehr

Vaadin ein Erfahrungsbericht

Vaadin ein Erfahrungsbericht Vaadin ein Erfahrungsbericht JUG SWITZERLAND 5. Februar 2013 Benjamin Schupp / Markus Kinzler mp technology consulting GmbH Speakers Benjamin Schupp Lead Architect, konzipiert und entwickelt Java-basierte

Mehr

Testen von graphischen Benutzeroberflächen. 24. Juni 2015

Testen von graphischen Benutzeroberflächen. 24. Juni 2015 Testen von graphischen Benutzeroberflächen 24. Juni 2015 Überblick Motivation für das automatische Testen von graphischen Benutzeroberflächen Entwicklungsprinzipien für GUIs Capture / Replay Testmethode

Mehr