PRAXISBUCH WICKET PROFESSIONELLE WEB-2.0- ANWENDUNGEN ENTWICKELN

Größe: px
Ab Seite anzeigen:

Download "PRAXISBUCH WICKET PROFESSIONELLE WEB-2.0- ANWENDUNGEN ENTWICKELN"

Transkript

1 michael MOSMANN PRAXISBUCH WICKET PROFESSIONELLE WEB-2.0- ANWENDUNGEN ENTWICKELN

2 Inhalt Vorwort...XIII 1 Einleitung Warum Wicket? Einfach, Konsistent, Offensichtlich Wiederverwendbarkeit Sauber getrennt Sicher Effizient und skalierbar Komplett Eine gute Wahl Vorbereitung und Installation Java, Maven und Eclipse Versionskontrolle mit Subversion Grundlagen einer Webanwendung Anwendungsschichten Verzeichnis und Paketstruktur Unit-Tests Aufsetzen der Teilprojekte Nomenklatur der Teilprojekte Aufsetzen der Teilprojekte Projektbasis ParentPom Teilprojekt Base Teilprojekte Datenbankkonfiguration Teilprojekt Persistenz Teilprojekt Applikationsschicht Teilprojekt Webapp Teilprojekt ParentPom Abschluss Erstellen von Eclipse-Projektdateien...27 VII

3 Inhalt 3 Mit Leben füllen Konfiguration mit Spring Datenbankkonfiguration Teilprojekt dbconfig Teilprojekt dbconfig-test Teilprojekt dbconfig-schema-update Schemagenerierung mit Hibernate Persistenz Datenbankzugriff Allgemeine Schnittstellendefinition Datenbankzugriff Hilfsklassen Datenbankzugriff User Datenbankzugriff Konfiguration Persistenz-Tests Schema-Update Anwendungsschicht Präsentationsschicht Hilfsklasse für Maven-Projekte Wicket Web Application Servlet-Konfiguration Spring-Konfiguration Start der Anwendung Die Wicket-Architektur Wicket und das HTTP-Protokoll Struktur WebApplication Session PageMap Page PageStore Component Request-Behandlung Komponentenphasen Nebenläufigkeit Threads Komponenten, Modelle, Markup Komponenten Modelle Markup Modelle Konverter Einfache Modelle Modelle verändern Modell-Hilfsklassen Modelle und Serialisierung DetachableModel Dynamische Modelldaten...61 VIII

4 Inhalt Kaskadierung von Modellen Automatische Kaskadierung von Modellen Datenbankzugriffsmodelle Komplexe Modellklassen Zugriff auf Bean-Properties Die Klasse PropertyModel CompoundPropertyModel Ausgelagerte Informationen Einfacher Zugriff auf Ressourcen...76 ResourceModel StringResourceModel Komponenten Basisklasse Component Komponentenbaum Darstellungsphasen Page, Session und Application Komponentenpfad Modelle Feedback Grundlagen der Vererbung Eine Seite mit eigenen Komponenten Vererbung für Fortgeschrittene Style, Locale und Variation Markup-Variationen Sichtbarkeit wicket:enclosure Empfehlung zur Anwendung Ajax Ajax-Events Einfache Event-Behandlung Automatische Event-Behandlung Basiskomponenten Gruppierende Komponenten Seiten Panel Fragment Border ComponentBorder WebMarkupContainer Inhaltselemente Label und MultiLineLabel Lokaler Konverter XML Das wicket:message-tag IX

5 Inhalt Image Links Von A nach B Ajax und Links Link-Tricks Externe Links Popups ResourceLink Formularlinks Behavior Darf es etwas JavaScript sein? Attribute anpassen Attribute erweitern Ajax und Formulare Listen und Tabellen Darstellung von Listen RepeatingView RefreshingView ListView PropertyListView ColumnListView DataProvider DataView GridView DataGridView DataTable DefaultDataTable Formulare Voraussetzungen Feedback Basisklasse für alle Beispiele Formulare absenden Absenden mit Submit-Button Button-Komponente Submit per Ajax POST und GET Textfelder Typangabe Automatische Typermittlung Label CheckBox RadioButton Auswahlfelder Select X

6 Inhalt DropDownChoice ListMultipleChoice Dateien hochladen FileUpload MultiFileUpload Gültigkeitsprüfung StringValidator Minimum und Maximum URL Eigene Validatoren FormValidator Passwortprüfung Eigene Prüfung Ajax AjaxFormSubmitBehavior AjaxFormValidatingBehavior AjaxComponentUpdatingBehavior OnChangeBehavior AutoCompleteTextField AjaxEditableLabel Erweitertes Feedback Feedback zum Formular Feedback für die Komponente Feedback als Rahmen Feedback als Indikator Feedback per CSS Generierte Formulare Verschachtelte Formulare Sessions und Security Einfache Variante Eine eigene Session-Klasse Geschützte Seiten Strategie WebApplication Seiten Marker an Komponenten Elemente ausblenden Wicket in der Praxis Die Integration von Spring Navigation CSS einbinden Eigene Basiskomponenten XI

7 Inhalt 11.5 Komponententausch AjaxFallbackConfirmLink Wizard Suchmaschinenoptimierung Pfad für BookmarkablePages SessionTimeoutPage SEO-Links Servlet-Filter Tracking mit Google Analytics Ressourcen Dynamisch erzeugte Grafiken Automatisch generierte Thumbnails Download durch Formular Shared Resources RSS-Feed Links auf Seiten und Ressourcen Optimierungen Applikation Konverter Debug Ressource Fehlersuche Häufige Fehlerquellen Komponenten fehlen Komponente ist bereits vorhanden Ajax funktioniert nicht Unit-Tests Anfang oder Ende? Register XII

8 1 1 Einleitung Ich bin im Frühjahr 2008 auf Wicket aufmerksam geworden. Doch da hatte Wicket bereits eine längere Entwicklung hinter sich, denn es wird bereits seit 2005 entwickelt wurde Wicket ein offizielles Apache-Projekt, und im Januar 2007 wurde dann das erste Release als Apache-Projekt veröffentlicht. Seit April 2008 setze ich Wicket mit viel Freude in Projekten ein. Die Idee zu diesem Buch entstand, nachdem ich ein paar Monate mit Wicket gearbeitet hatte und die Begeisterung für das Framework immer stärker zunahm. Ich hatte zu dem Zeitpunkt bereits einiges über Wicket gelesen, vermisste aber oft den Praxisbezug der Beispiele und Lösungen. Viele Wege führen nach Rom, aber nicht jeder ist kurz oder schnell. Und so habe ich am Anfang auch das eine oder andere Mal eine falsche Abbiegung genommen, die sich zwar nicht als Sackgasse entpuppte, aber teilweise einen gehörigen Umweg darstellte. Dieses Buch soll als Straßenkarte dienen, damit man sich auf den gut ausgebauten Straßen, die Wicket bietet, zurechtfindet. Wer sollte das Buch lesen? Wer Webanwendungen entwickelt oder entwickeln möchte und dabei auf Java als Programmiersprache setzt, wird nach der Lektüre dieses Buches sehr schnell Webanwendungen entwickeln können. Dabei werden alle Aspekte beleuchtet, die für das Erstellen einer Webanwendung wichtig und notwendig sind. Entwickler, die bereits Wicket einsetzen, profitieren von den praxisnahen Beispielen und bewährten Lösungen. Konventionen In diesem Buch gelten folgende Konventionen: Programmcode, Verzeichnisse und Dateinamen werden innerhalb des normalen Textes als code dargestellt. Quelltexte werden ohne besondere Überschrift als Codeblock dargestellt: public void javacode() Bei der Auszeichnung mit Überschrift wird ein Dateiname angegeben: 1

9 1 Einleitung Listing 1.1 Beispiel.java public void anderercode() Für HTML-Quelltexte, Property- und Markup-Dateien wird dieselbe Formatierung wie für Java-Quelltexte benutzt. Wenn durch die begrenzte Breite des Buches Text umbrochen werden muss und das an dieser Stelle nicht möglich ist, wird das unwillkürliche Zeilenende durch ein Leerzeichen und \ angegeben. Nur wenn das \ -Zeichen an letzter Stelle steht, ist ein unwillkürlicher Zeilenumbruch gemeint. Die nächste Zeile wird dann um zwei Leerzeichen gegenüber dem Zeilenanfang eingerückt: Text=Der Text ist zu lang, als dass er auf eine Zeile passen \ würde, und beginnt auf der neuen Zeile mit zwei Leerzeichen, \ die ebenfalls ignoriert werden müssen. Ein \-Zeichen mittendrin ist in Ordnung. Da sich viele Dinge immer wiederholen, wird im Laufe des Buches das eine oder andere gekürzt. Damit man erkennen kann, ob gekürzt wurde, erscheinen an der entsprechenden Stelle drei Punkte:... Wenn solche Kürzungen vorgenommen wurden, ist es ebenso wahrscheinlich, dass nur leichte Anpassungen an bereits bestehenden Quelltexten vorgenommen wurden. Diese werden der besseren Übersichtlichkeit halber entsprechend hervorgehoben:... das stand hier schon doch das ist neu... Kommandos, die in der Konsole eingeben werden müssen, sind von Natur aus nie mehrzeilig. Es gelten daher dieselben Regeln zum Umbruch wie bei Quelltexten. Allerdings beginnen Kommandos immer mit einem Dollarzeichen, es sei denn, sie kommen innerhalb des Textes vor. Dann ergibt sich die Bedeutung aus dem Text: $ kommando Java Alle Felder einer Klasse starten mit einem Unterstrich. Wenn eine Klasse als Bean benutzt wird, dann erfolgt der Zugriff auf das Feld durch eine passende set- und get-methode. Listing 1.2 BeispielBean.java public class BeispielBean { String _titel; } } public String gettitel() { return _titel; } public void settitel(string titel) { _titel=titel; 2

10 1.1 Warum Wicket? Im Folgenden wird diese ausführliche Schreibweise gekürzt. Dabei werden alle Felder mit den entsprechenden Typangaben aufgeführt und exemplarisch die Methodennamen für die ersten Felder angegeben. Listing 1.3 BeispielBean.java (gekürzt) public class BeispielBean { String _titel; } gettitel(),settitel(),... Importanweisungen werden nur aufgeführt, wenn die zu importierende Klasse nicht aus dem Beispielprojekt oder aus dem Wicket-Framework stammt und sich auch nicht in den Java-Standardbibliotheken befindet (z.b. import java.io.serializable;). Die Kürzung wird durch... gekennzeichnet. Markup Für die Darstellung von Komponenten nutzt Wicket einen Template-Mechanismus. Dabei kann einer Komponente eine HTML-Datei zugeordnet werden, in der alle nötigen Strukturen für die Darstellung enthalten sind. Diese Datei wird im folgenden Markup genannt. Version Das Buch bezieht sich auf die Wicket-Version 1.4, die mit dem Erscheinen dieses Buches in einer finalen Version verfügbar sein wird. Die Beispiele können begrenzt auch auf Wicket 1.3 übertragen werden. Wenn man nicht durch andere Abhängigkeiten gezwungen ist, Wicket noch in einer alten Version einzusetzen, sollte man spätestens jetzt den Schritt wagen und auf Wicket in der Version 1.4 migrieren. Online Da die Entwicklung von Wicket immer weiter geht, veröffentliche ich auf der Seite fortlaufend Erfahrungen und Tipps aus der praktischen Arbeit. Wenn Sie mit mir in Kontakt treten wollen, genügt eine an: michael@mosmann.de. 1.1 Warum Wicket? Für das Entwickeln von Webanwendungen stehen eine ganze Reihe von Frameworks und Technologien bereit. Die Auswahl fällt schwer, da man die meisten Anforderungen mit einer ganzen Reihe von Technologien umsetzen könnte. Wenn man dann die zu verwendende Programmiersprache auf Java eingrenzt, bleiben trotzdem noch einige Frameworks übrig, die um die Gunst der Programmierer wetteifern. 3

11 1 Einleitung Aus der umfangreichen Liste der Möglichkeiten habe ich Wicket ausgewählt. Dabei hat Wicket zunächst mit recht einfachen Mitteln mein Interesse geweckt: Es gibt eine sehr einfache und schnelle Möglichkeit, ein Testprojekt aufzusetzen. Dieses kann sofort gestartet werden und zeigt ein minimales Grundgerüst einer Wicket- Anwendung. Die bestehende Anwendung kann einfach verändert werden, was zu einem sehr schnellen Erfolgserlebnis führt. Die Lernkurve für die ersten Gehversuche ist sehr gering. Nachdem ich auf diese Weise sehr schnell einen ersten Eindruck gewinnen konnte, habe ich mich eingehender mit Wicket beschäftigt. Nach einer kurzen Einarbeitungsphase und einigen kleinen Beispielanwendungen war ich mir sicher, dass ich Wicket für meine zukünftigen Webprojekte einsetzen werde. Die Kriterien, die für Wicket sprechen, habe ich an eine Übersicht auf der Webseite des Wicket-Projektes 1 angelehnt, beschränke mich aber hier auf die für mich besonders wichtigen Aspekte Einfach, Konsistent, Offensichtlich Ich empfehle als Einstieg eine kleine Beispielanwendung, die man sich über die Quickstart -Funktion 2 generieren lassen kann. Anhand dieser Anwendung kann man einige der folgenden Punkte recht schnell nachvollziehen: Alles kann in Java realisiert werden. Das Grundprinzip erinnert an Swing und ist leicht zu verstehen. Es müssen keine Konfigurationsdateien erstellt werden. Wicket-Anwendungen können einfach für Suchmaschinen optimiert werden. Hervorragende Unterstützung bei der Fehlersuche durch ausführliche Informationen im Entwicklungsmodus. Wicket benötigt keine speziellen Vorbereitungen oder Vorarbeiten. Wicket ist einfach nur Java. Wicket-Anwendungen können über Unit-Tests getestet werden. Es ist für mich einer der größten Vorteile, dass alles in Java ausgedrückt werden muss. Es gibt nur eine Stelle, an der ein Fehler auftreten kann: im Code. Mit den sehr ausführlichen Fehlermeldungen kann der Fehler sehr schnell eingegrenzt und behoben werden Wiederverwendbarkeit Wicket ist zwar nicht das einzige Framework, bei dem man auch bei Komponenten auf Vererbung zurückgreifen kann, doch das einzige, bei dem das sehr einfach umzusetzen ist

12 1.1 Warum Wicket? Das ermöglicht sehr leistungsfähige und gleichzeitig effektive Komponenten. Da Komponenten ihre Funktionalität vollständig in sich kapseln, kann man sie innerhalb derselben Anwendung beliebig oft nutzen, sodass komplexe Anwendungen sehr schnell realisiert werden können. Wicket-Komponenten können auch anwendungsunabhängig entwickelt werden. Alle notwendigen Daten und Informationen können in eine Java-Bibliothek ausgelagert und dann in verschiedensten Projekten eingesetzt werden. Dazu muss die Bibliothek nur in das Projekt eingebunden werden. Auf diese Weise profitiert man sogar in allen nachfolgenden Wicket-Projekten von der eigenen Entwicklungsarbeit, da man oft fast alle allgemeinen Komponenten wiederverwenden kann. So entsteht auch hier eine Bibliothek von Lösungen, wie man sie aus anderen Bereichen der Anwendungsentwicklung kennt Sauber getrennt Wer Wicket zum ersten Mal testet und vorher schon Erfahrungen mit JSP, JSF oder ähnlichen Ansätzen gemacht hat, wundert sich, dass im Markup (HTML-Schnipsel, die zur Komponente gehören und für die Darstellung wichtig sind) keine Code-Bestandteile zu finden sind. Dieser Punkt irritiert so stark, dass er immer wieder z.b. in Mailinglisten thematisiert wird. Während der Arbeit mit Wicket offenbart dieses Konzept seine Vorteile: Im Markup befinden sich nur Referenzen auf Komponenten, aber kein Code oder spezielle Logik. Die Komplexität und der Funktionsreichtum der Anwendung werden nur durch Java als Programmiersprache und nicht durch eine in ihrer Ausdruckstärke eingeschränkten Auszeichnungssprache begrenzt. Programmcode entsteht auf diese Weise nur an einer Stelle und in einer Sprache. Die Markup-Dateien für die Komponenten können mit einfachen Textprogrammen oder mit HTML-Editoren bearbeitet werden. Da Wicket keine besondere Notation erfordert, gehen bei der Bearbeitung keine Informationen verloren, sodass die Gestaltung der Vorlagen z.b. durch einen Webdesigner angepasst werden kann. So wird die Arbeitsteilung zwischen Entwickler und Gestalter gut unterstützt. Im Zweifelsfall muss nur die versehentlich gelöschte Bezeichnung der Komponente wiederhergestellt werden. Auf alle positiven Skalierungseffekte im Entwicklungsprozess durch die Nutzung von Java als Programmiersprache und den darauf aufsetzenden unterstützenden Werkzeugen kann bei der Entwicklung von Anwendungen mit Wicket zurückgegriffen werden. Die Komponentenarchitektur unterstützt diesen Aspekt zusätzlich Sicher Je nach verwendetem Framework sind Webanwendungen mehr oder weniger anfällig für Code-Injection 3 -, XSS 4 - und andere Attacken

13 Register A Ajax 102 AjaxRequestTarget 102, 140 Event 103 setoutputmarkupid() 103 setoutputmarkupplaceholdertag() 106 Anwendungslogik 8, 10 Anwendungsschicht 8, 41 Application 84 siehe auch WebApplication Applikationsschicht 24 B Behavior 144 Attribute anpassen 145 oncomponenttag() 144 Border 120 C Component 51, 81 siehe auch Komponente ComponentBorder 125 D Datenbank Konfiguration 20, 30, 37 Produktivdatenbank 20, 30 Testdatenbank 22 Datenhaltung 8 siehe auch Persistenz Dependency Injection 8 siehe auch Spring Framework E Eclipse Installation 7 Projektdateien 27 F Feedback 85, 170, 214 ComponentFeedbackMessageFilter 215 ContainerFeedbackMessageFilter 214 CustomFeedbackPanel 251 FeedbackMessage 85 FeedbackPanel 170 FormComponentCssFeedbackBorder 218 FormComponentFeedbackBorder 216 FormComponentFeedbackIndicator 217 MessageFilter 214 Formular 169 Ajax 205 AjaxButton 175 AjaxComponentUpdatingBehavior 207 AjaxFallbackButton 174 AjaxFormSubmitBehavior 205 AjaxFormValidatingBehavior 207 AjaxSubmitLink 175 AutoCompleteTextField 210 Button 173 CheckBox 182 CheckBoxMultipleChoice 183 CheckGroup 183 CheckGroupSelector

14 Register ChoiceRenderer 190 DropDownChoice 188 FileUpload 192 FormComponentLabel 182 GET 175 Label 181 ListChoice 189 ListMultipleChoice 190, 191 MultiFileUpload 194 OnChangeBehavior 209 onsubmit() 172 Palette 191 POST 175 RadioButton 185 RadioChoice 185 RadioGroup 185 Select 186 SubmitLink 173 TextField 176 UploadProgressBar 193 UploadWebRequest 193 Validatoren 195 siehe auch Validator Fragment 119 G Google Analytics 271 H Hibernate 9 HQL 10 Schemagenerierung 32 I InjectorHolder siehe auch Spring Framework SpringBean 237 Installation 7 J Java, Installation 7 JavaBean 2, 181 Jetty 24 Maven-Plugin 26 starten 46 K Komponente 51, 53 AjaxEditableLabel 212 AjaxFallbackConfirmLink 254 ButtonLink 250 callonbeforerenderifnotvisible() 83, 101, 124 detach() 83 getpage() 84 getparent() 81 getpath() 84 ID 81 isvisible() 99 IVisitor 82 Komponentenbaum 81 Modell 84 onbeforerender() 52, 83, 101, 124 ondetach() 52, 83 Sichtbarkeit 99 Vererbung 85 siehe auch Vererbung Wizard 256 Konventionen 1 Konverter 55, 129, 284 IConverter-Interface 56 IConverterLocator 56 L Label 127 MultiLineLabel 127 Link 137 AbstractLink 137 Ajax 138 AjaxFallbackLink 139 AjaxLink 140 AjaxSubmitLink 144 BookmarkablePageLink 137, 260 ExternalLink 141 IndicatingAjaxFallbackLink 139 IndicatingAjaxLink 140 onclick() 138 Popup 141 ResourceLink 143 SubmitLink 144 Tricks

15 Register Liste 149 ColumnListView 154 DataGridView 159 DataProvider 156, 164 DataTable 161 DataView 156 DefaultDataTable 162 GridView 158 ListView 152, 184 PropertyListView 153 RefreshingView 150 RepeatingView 149 Locale 94 M Markup 3, 5, 53 getvariation() 94 Variationen 94 Maven Abhängigkeiten 15 artifactid 15 groupid 15 Installation 7 POM 11, 17 Projektverwaltung 11 version 15, 16 Modell 53, 55 CompoundPropertyModel 74 DaoModel 67 detach() 55, 61 IModel-Interface 55 Kaskadierung 62, 65 LoadableDetachableModel 62 Model.of() 60 modelchanged() 58 modelchanging() 58 PropertyModel 72 ResourceModel 76 Serialisierung 61 StringResourceModel 78 verändern 58 Model-View-Controller 10 Modus Deployment 47 Development 47 MVC 55 siehe auch Model-View-Controller P Page 50, 84 als XML 130 BookmarkablePage 258 CSS 116 JavaScript 116 PageParameter 110 RedirectPage 112 URL 115 WebPage 109 PageMap 50 PageStore 51, 61 Panel 117 ParentPom 16, 26 Persistenz 9, 22, 35 AbstractDao 34, 36 AbstractDaoList 163 DaoInterface 33 DoInterface 33 Persistenz-Tests 13, 38 Präsentation 10 Präsentationsschicht 8, 41 Property Datei 98 XML-Format 99 Zeichenkodierung 99 Q Quickstart 4, 12 R Request Behandlung 51 RequestCycle 51 Resource 98, 274, 285 BufferedDynamicImageResource 275 Download 277 RenderedDynamicImageResource 275 ResourceLink

16 Register Shared Resources 278 URL 282 Verzeichnis 95 WebResource 276 ResourceReference 116, 134 RSS-Feed 280 S Schema-Update 21, 31, 40 Security 225 siehe auch Sicherheit SEO 264 siehe auch Suchmaschinenoptimierung Session 50, 84 DisableJSessionIDinUrlFilter 268 eigene Session-Klasse 225 get() 84 RobotJSessionIDUrlFilter 269 setreuseitems() siehe auch Liste ListView 184 Sicherheit 5 Anmeldeseite 229 geschützte Komponente 231 geschützte Seite 229 IAuthorizationStrategy 231 ProtectedPage 229 SimplePageAuthorizationStrategy 226 Spring Framework Konfiguration 46 SpringBean 235 Spring 26, 29 siehe auch Spring Framework Spring-Framework 10 Konfiguration 29 Style 94 Subversion 7 Installation 8 Suchmaschinenoptimierung 258 BeanBookmarkablePageLink 266 T Tomcat 24 U Unit-Tests 12, 288 UserDao siehe auch Persistenz AbstractDao 36 V Validator AbstractValidator 200 AddressValidator 197 EqualPasswordInputValidator 202 FormValidator 201 getdependentformcomponents() 204 MaximumValidator 197 MinimumValidator 197 Palindrom-Validator 199 RangeValidator 197 StringValidator 196 UrlValidator 199 Validatable 200 validate() 204 Variation 94 VCS 8 siehe auch Versionskontrolle Vererbung einfach 85 für Fortgeschrittene 91 Markup 87 mit eigenem Markup 87 ohne eigenes Markup 86 Versionskontrolle 7 W war 24 siehe auch Webarchiv WebApp 24, 42 WebApplication 50 Webarchiv 26 WebMarkupContainer 126 wicket:border 124 wicket:child 86, 88 wicket:container 89 wicket:enclosure 100 wicket:extend 88 wicket:head 86 wicket:message 131 wicket:panel

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

WICKET PROFESSIONELLE WEB-2.0- ANWENDUNGEN ENTWICKELN PRAXISBUCH

WICKET PROFESSIONELLE WEB-2.0- ANWENDUNGEN ENTWICKELN PRAXISBUCH michael MOSMANN PRAXISBUCH WICKET PROFESSIONELLE WEB-2.0- ANWENDUNGEN ENTWICKELN Mosmann Praxisbuch Wicket vbleiben Sie einfach auf dem Laufenden: www.hanser.de/newsletter Sofort anmelden und Monat für

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

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

Programmieren mit Edipse 3

Programmieren mit Edipse 3 Michael Seeboerger-Weichselbaum Programmieren mit Edipse 3 Universelle Entwicklungsplattform für Java, PHP, C/C++, SQL, XML, XSLT, XSL-FO, JSP, Servlets, J2EE, UML, HTML, CSS, JavaScript I n halts verzeich

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

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

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. 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

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

Inhaltsverzeichnis. Einleitung

Inhaltsverzeichnis. Einleitung Einleitung 1 Rapid Web Development 1.1 Alle reden von Web 2.0 1.2 Was ist ein Web-Development-Framework? 1.3 Die zentralen Komponenten von TurboGears Python Kid-Templating CherryPy SQLObject Weitere Komponenten

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

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

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

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

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

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

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

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

Anforderungsgetriebene Webentwicklung mit Grails:

Anforderungsgetriebene Webentwicklung mit Grails: ne mit Grails: und dem 26.01.2012 und dem Gliederung und dem Projektumfeld Agentur mit weniger als 5 Mitarbeitern Schwerpunkte: mit Typo 3 / PHP ios App-Entwicklung für ipad und iphone und dem Folie 1

Mehr

Programmieren lernen in ASP.NET mit C#

Programmieren lernen in ASP.NET mit C# Programmieren lernen in ASP.NET mit C# von Patrick A. Lorenz, Christoph A. Müller 1. Auflage Hanser München 2003 Verlag C.H. Beck im Internet: www.beck.de ISBN 978 3 446 22311 0 Zu Leseprobe schnell und

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

Moderne Web- Anwendungen mit

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

Mehr

Nils Asmussen Die Architektur des Java Web-Frameworks Apache Wicket

Nils Asmussen Die Architektur des Java Web-Frameworks Apache Wicket Nils Asmussen Die Architektur des Java Web-Frameworks Apache Wicket 21. Dezember 2011 Technischer Bericht Nr. 2 des Instituts für SoftwareArchitektur Inhaltsverzeichnis 1 Einleitung 2 2 Beschreibung der

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

Projekt Weblog :: Integration

Projekt Weblog :: Integration Projekt Weblog :: Integration Die Implementation des Formhandling Frameworks wird nun im Projekt Weblog integriert. Dafür stehen 2 Möglichkeiten zur Auswahl. Sie haben Ihre eigene Implementation der Actions,

Mehr

Inhaltsverzeichnis. Apps für Android entwickeln

Inhaltsverzeichnis. Apps für Android entwickeln Inhaltsverzeichnis zu Apps für Android entwickeln von Jan Tittel und Jochen Baumann ISBN (Buch): 978-3-446-43191-1 ISBN (E-Book): 978-3-446-43315-1 Weitere Informationen und Bestellungen unter http://www.hanser-fachbuch.de/978-3-446-43191-1

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

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

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

Motivation Grundlagen Technologien Manipulation Ecore Genmodell Demo Persistenz Notification Ausblick GMF Fazit / Quellen

Motivation Grundlagen Technologien Manipulation Ecore Genmodell Demo Persistenz Notification Ausblick GMF Fazit / Quellen Motivation Grundlagen Technologien Manipulation Ecore Genmodell Demo Persistenz Notification Ausblick GMF Fazit / Quellen Soll ich Modellieren oder Programmieren? sowohl als auch!!! Produktivitäts-Steigerung

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

Rapid Java wie mit Forms

Rapid Java wie mit Forms DOAG Konferenz 2011 Rapid Java wie mit Forms Java aktuell: XDEV 3 ist die erste professionelle Java IDE für Rapid Application Development. Viele RAD-Funktionen und die Arbeitsweise damit erinnern sehr

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

Rechnernetze Projekt SS 2015

Rechnernetze Projekt SS 2015 30/03/15 Seite 1 Aspektorientierte Programmierung logische Aspekte (Concerns) im Programm separieren Crosscutting Concerns (Ziel: generische Funktionalitäten über mehrere Klassen hinweg zu verwenden -

Mehr

Eclipse Tomcat Plugin Starthilfe

Eclipse Tomcat Plugin Starthilfe In dieser Starthilfe Installation des Tomcat Plugins Anpassen der Installation Das Tomcat HelloWorld (Servlet) Projekt Hot Code Replacement Eclipse Tomcat Plugin Starthilfe 1.1. Installation Folgende Software

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

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

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

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

Inhaltsverzeichnis. Einleitung 1. Teil I Workshop Schritt für Schritt zum professionellen HTML-CSS-Design. 1 So geht der Workshop vor 6

Inhaltsverzeichnis. Einleitung 1. Teil I Workshop Schritt für Schritt zum professionellen HTML-CSS-Design. 1 So geht der Workshop vor 6 ix Einleitung 1 Teil I Workshop Schritt für Schritt zum professionellen HTML-CSS-Design 1 So geht der Workshop vor 6 2 Vorbereitungen 8 2.1 Anlegen einer sinnvollen Ordnerstruktur... 9 2.2 Das brauchen

Mehr

HTML5 und das Framework jquery Mobile

HTML5 und das Framework jquery Mobile HTML5 und das Framework jquery Mobile Seminarvortrag Naeema Anees Betreuer: Prof. Ulrich Stegelmann Dipl.-Inform. Axel Blum Einleitung Vielfalt an mobilen Geräten Verschiedene Betriebssysteme Verschiedene

Mehr

Handbuch zur Integration der Verwaltungssuchmaschine NRW (VSM) in TYPO3 mit der Extension dnrw_vsm

Handbuch zur Integration der Verwaltungssuchmaschine NRW (VSM) in TYPO3 mit der Extension dnrw_vsm Handbuch zur Integration der Verwaltungssuchmaschine NRW (VSM) in TYPO3 mit der Extension dnrw_vsm Stand: 18.09.2014 Systemvoraussetzungen TYPO3 in der Version 6.0 6.2.xx Installation Installieren Sie

Mehr

Einführung in Maven und GWT

Einführung in Maven und GWT Einführung in Maven und GWT Prof. Christoph Knabe Beuth-Hochschule Berlin 08.05.2014 Gliederung Motivation für Build-Werkzeug Maven-Ziele, Begriffe Maven-Benutzung in 5 min Maven-Vorteile GWT-Ziele GWT-Projekt

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

Eclipse Tutorial.doc

Eclipse Tutorial.doc Berner Fachhochschule Hochschule für Technik und Informatik, HTI Fachbereich Elektro- und Kommunikationstechnik Labor für Technische Informatik Eclipse Tutorial 2005, HTI Burgdorf R. Weber Dateiname: Eclipse

Mehr

Einführung in Google Web Toolkit

Einführung in Google Web Toolkit Einführung in Google Web Toolkit Lars Pfannenschmidt Tobias Ullrich Software Freedom Day 2009 Lars Pfannenschmidt, Tobias Ullrich () Einführung in Google Web Toolkit Software Freedom Day 2009 1 / 24 Aus

Mehr

1. So einfach ist web to date: in wenigen Schritten zur eigenen kleinen Webpräsenz 11

1. So einfach ist web to date: in wenigen Schritten zur eigenen kleinen Webpräsenz 11 Inhaltsverzeichnis 1. So einfach ist web to date: in wenigen Schritten zur eigenen kleinen Webpräsenz 11 1.1 Eine kleine Website, z. B. für Ihr Ladengeschäft, blitzschnell anlegen 12 1.2 Von der Web-Visitenkarte

Mehr

Java.NET Web-Technologien Mobile

Java.NET Web-Technologien Mobile 2017 Java.NET Web-Technologien Mobile MATHEMA Training Seit mehr als 20 Jahren unterstützen wir unsere Kunden nicht nur mit hochqualifizierter Beratung sowie Entwicklungsleistung, sondern geben unser in

Mehr

Multimedia im Netz. Wintersemester 2011/12. Übung 10. Betreuer: Verantwortlicher Professor: Sebastian Löhmann. Prof. Dr.

Multimedia im Netz. Wintersemester 2011/12. Übung 10. Betreuer: Verantwortlicher Professor: Sebastian Löhmann. Prof. Dr. Multimedia im Netz Wintersemester 2011/12 Übung 10 Betreuer: Verantwortlicher Professor: Sebastian Löhmann Prof. Dr. Heinrich Hussmann Organisatorisches 2 Gesundes neues Jahr 3 Blatt 08 Videoformate im

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

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

09.10.2015. 02.10.2015 + 07.10.2015 Seite 1. 02.10.2015 + 07.10.2015 Seite 2

09.10.2015. 02.10.2015 + 07.10.2015 Seite 1. 02.10.2015 + 07.10.2015 Seite 2 02.10.2015 + 07.10.2015 Seite 1 02.10.2015 + 07.10.2015 Seite 2 1 Anzahl der Klassenarbeiten: Mindestens zwei Klassenarbeiten pro Halbjahr (= 4 KA pro Jahr) Im ersten Ausbildungsjahr gibt es jedoch kein

Mehr

SAP -Schnelleinstieg: ABAP-Entwicklung in Eclipse. Christoph Lordieck

SAP -Schnelleinstieg: ABAP-Entwicklung in Eclipse. Christoph Lordieck SAP -Schnelleinstieg: ABAP-Entwicklung in Eclipse Christoph Lordieck INHALTSVERZEICHNIS Inhaltsverzeichnis Vorwort 7 1 Einführung in Eclipse 11 1.1 Motivation der SAP für Eclipse 11 1.2 Vorteile von ABAP-Entwicklung

Mehr

Das neue Suite Content Management System

Das neue Suite Content Management System Das neue Suite Content Management System Eine Beschreibung des neuen 'Visual CMS', veröffentlicht mit emarketing Suite Version 8.0 im Mai, 2014 Mai 2014 1 Einführung in das Visual CMS Bitte beachten Sie:

Mehr

Praxisbeispiel 01:18 Webformulare 07:39 Flexibles zweispaltiges Layout 05:24 Image-Replacement-Techniken 04:02

Praxisbeispiel 01:18 Webformulare 07:39 Flexibles zweispaltiges Layout 05:24 Image-Replacement-Techniken 04:02 Einfach mehr können. HTML/CSS Einstieg für Anspruchsvolle Bonusmaterial Praxisbeispiel 01:18 Webformulare 07:39 Flexibles zweispaltiges Layout 05:24 Image-Replacement-Techniken 04:02 Inhaltsverzeichnis

Mehr

Praktikum Spring MVC. 1.2. Spring integrieren In der pom.xml Einträge für Spring hinzufügen.

Praktikum Spring MVC. 1.2. Spring integrieren In der pom.xml Einträge für Spring hinzufügen. Praktikum Spring MVC Aufgabe 1 Im ersten Teil des Praktikums wird eine Test Webapplikation entwickelt, anhand derer einige Konzepte von Spring nachvollzogen werden können. Dabei handelt es sich um Spring

Mehr

Webseiten werden mobil Planung geht vor

Webseiten werden mobil Planung geht vor Webseiten werden mobil Planung geht vor Mobiles Web Aspekte der Planung 20. April 2012 Inhaltliche Schwerpunkte Einordnung mobiler Technologien Besonderheiten mobiler Touchscreen-Geräte Best Practices

Mehr

Inhalt. Vorwort 13. Einleitung 15. Für wen ist dieses Buch gedacht? 15 Zum Aufbau des Buchs Installation und erste Schritte 17

Inhalt. Vorwort 13. Einleitung 15. Für wen ist dieses Buch gedacht? 15 Zum Aufbau des Buchs Installation und erste Schritte 17 Inhalt Vorwort 13 Einleitung 15 Für wen ist dieses Buch gedacht? 15 Zum Aufbau des Buchs 16 1 Installation und erste Schritte 17 1.1 Die Installation von GoLive 5.0 17 Vor Beginn der Installation 17 Die

Mehr

JBoss Seam. Ein JEE 5 Webframework. Jörg Wüthrich Infopoint, 4. Februar 2009

JBoss Seam. Ein JEE 5 Webframework. Jörg Wüthrich Infopoint, 4. Februar 2009 JBoss Seam Ein JEE 5 Webframework Jörg Wüthrich Infopoint, 4. Februar 2009 Inhalt Einführung Warum Seam? Zentrale Konzepte Demo Validierung Abschliessende Gedanken 04.02.2009 Infopoint - JBoss Seam - Jörg

Mehr

Persistenz. Ralf Gitzel

Persistenz. Ralf Gitzel Persistenz Ralf Gitzel ralf_gitzel@hotmail.de 1 Themenübersicht Ralf Gitzel ralf_gitzel@hotmail.de 2 Übersicht Grundkonzepte Entity Beans Meine erste Entity Entity-Manager Lernziele Übungsaufgabe 3 Grundkonzepte

Mehr

Es wird das Struts <html:option> Element erläutert und anhand von kleinen Beispielen der Umgang veranschaulicht.

Es wird das Struts <html:option> Element erläutert und anhand von kleinen Beispielen der Umgang veranschaulicht. Struts Code Peaces Element Es wird das Struts Element erläutert und anhand von kleinen Beispielen der Umgang veranschaulicht. Allgemeines Autor: Sascha Wolski Sebastian Hennebrüder

Mehr

scmsp SMARTES Content-Management-System Bestimmtes kann und das dafür sehr gut. Bei der Konzeption des blockcms stand die Einfachheit im Vordergrund:

scmsp SMARTES Content-Management-System Bestimmtes kann und das dafür sehr gut. Bei der Konzeption des blockcms stand die Einfachheit im Vordergrund: scmsp SMARTES Content-Management-System blockcms steht für Block Content Management System Wir brauchen kein CMS, das alles kann, sondern eines, das nur Bestimmtes kann und das dafür sehr gut. Bei der

Mehr

Programmieren mit Eclipse 3

Programmieren mit Eclipse 3 Michael Seeboerger-Weichselbaum Programmieren mit Eclipse 3 Universelle Entwicklungsplattform für Java, PHP, C/C++, SQL, XML, XSLT, XSL-FO, JSP, Servlets, JEE, UML, HTML, CSS, JavaScript 2., überarbeitete

Mehr

Eclipse und EclipseLink

Eclipse und EclipseLink Eclipse und EclipseLink Johannes Michler Johannes.Michler@promatis.de PROMATIS, Ettlingen Zugriff auf Oracle Datenbanken aus Eclipse RCP Anwendungen via EclipseLink 18.09.2009 1 Gliederung Eclipse als

Mehr

Mit dem 'Skeleton' zur eigenen Anwendung

Mit dem 'Skeleton' zur eigenen Anwendung Mit dem 'Skeleton' zur eigenen Anwendung 2015-11-10 by Kathleen Neumann, Wiebke Oeltjen, Robert Stephan Zur Entwicklung einer eigenen MyCoRe-Anwendung stellen wir ein Anwendungsgerüst zur Verfügung, das

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

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

MEHR FUNKTIONEN, MEHR E-COMMERCE:

MEHR FUNKTIONEN, MEHR E-COMMERCE: MEHR FUNKTIONEN, MEHR E-COMMERCE: XT:COMMERCE PLUGIN BB HERVORGEHOBENE PRODUKTE XT:COMMERCE PLUGIN BB HERVORGEHOBENE PRODUKTE Das xt:commerce Modul BB Hervorgehobene Produkte erlaubt es Ihnen, ein beliebiges

Mehr

Model-View-Controller

Model-View-Controller Model-View-Controller Seminar Software-Entwurf Leif Singer Gliederung Einordnung Überblick & Geschichte Aufgabenverteilung & Beispiel Model View Controller Zusammenspiel Web Anwendungen

Mehr

Praktische Anwendungsentwicklung mit Oracle Forms

Praktische Anwendungsentwicklung mit Oracle Forms Praktische Anwendungsentwicklung mit Oracle Forms von Perry Pakull, Stefan Jüssen, Walter H. Müller 1. Auflage Hanser München 2007 Verlag C.H. Beck im Internet: www.beck.de ISBN 978 3 446 41098 5 Zu Leseprobe

Mehr

Webseiten-Bericht für hmbweb.de

Webseiten-Bericht für hmbweb.de Webseiten-Bericht für hmbweb.de Generiert am 26 Oktober 2016 06:46 AM Der Wert ist 51/100 SEO Inhalte Seitentitel RSS-Feeds - Bookmarks- und Artikelverzeichnis Länge : 45 Perfekt, denn Ihr Seitentitel

Mehr

Webseiten entwickeln mit ASP.NET

Webseiten entwickeln mit ASP.NET Webseiten entwickeln mit ASP.NET Eine Einführung mit umfangreichem Beispielprojekt. Alle Codes in Visual Basic und C# Bearbeitet von Jamal Baydaoui 1. Auflage 2013. Buch. 316 S. ISBN 978 3 446 43723 4

Mehr

jetzt lerne ich ASP.NET Dynamische Webseiten mit ASP.NET 1.1 mit Ausblick auf ASP 2.0 WENZ KORDWIG TRENNHAUS

jetzt lerne ich ASP.NET Dynamische Webseiten mit ASP.NET 1.1 mit Ausblick auf ASP 2.0 WENZ KORDWIG TRENNHAUS ASP.NET Dynamische Webseiten mit ASP.NET 1.1 mit Ausblick auf ASP 2.0 WENZ KORDWIG TRENNHAUS Inhaltsverzeichnis jetzt lerne ich Vorwort 13 1 Einführung 19 1.1 Was ist ASP.NET? 19 1.1.1 Ein kurzer Ausflug:

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

JBuilderX: Installation und Kurzanleitung (Mac)

JBuilderX: Installation und Kurzanleitung (Mac) Installation Seite 1 JBuilderX: Installation und Kurzanleitung (Mac) 1. JBuilder installieren Eine Gratis-Version kann von der Webseite www.borland.de heruntergeladen werden. Systemvoraussetzungen: 256

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

Ruby on Rails. Thomas Baustert Ralf Wirdemann www.b-simple.de. Alternative zur Web-Entwicklung mit Java? 27.06.2005 www.b-simple.

Ruby on Rails. Thomas Baustert Ralf Wirdemann www.b-simple.de. Alternative zur Web-Entwicklung mit Java? 27.06.2005 www.b-simple. Ruby on Rails Alternative zur Web-Entwicklung mit Java? Thomas Baustert Ralf Wirdemann www.b-simple.de 27.06.2005 www.b-simple.de 1 Überblick Was ist Ruby on Rails? Weblog Demo Rails Komponenten Controller,

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

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

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

Sachwortverzeichnis... 251

Sachwortverzeichnis... 251 Inhalt Vorwort... V 1 WWW World Wide Web... 1 1.1 Das Internet Infrastruktur und Administration... 2 1.2 Datenübertragung... 4 1.3 Sprachen im Web... 6 1.4 Webseiten... 7 1.4.1 Clientseitige Dynamik...

Mehr

Webseiten-Bericht für watch-freemovie-online.net

Webseiten-Bericht für watch-freemovie-online.net Webseiten-Bericht für watch-freemovie-online.net Generiert am 24 Oktober 2016 03:32 AM Der Wert ist 46/100 SEO Inhalte Seitentitel watch-free-movie-online.net 521: Web server is down Länge : 53 Perfekt,

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

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

ADF Mobile konkret Best Practices Live erklärt. Jan Ernst

ADF Mobile konkret Best Practices Live erklärt. Jan Ernst ADF Mobile konkret Best Practices Live erklärt Jan Ernst Zur Person: Jan Ernst Bachelorstudium Wirtschaftswissenschaften mit Schwerpunkt Wirtschaftsinformatik (4. Semsester) FAU Erlangen/Nürnberg Werkstudent

Mehr

MOA-ID Workshop. Anwendungsintegration, Installation und Konfiguration. Klaus Stranacher Graz, 25.06.2013

MOA-ID Workshop. Anwendungsintegration, Installation und Konfiguration. Klaus Stranacher Graz, 25.06.2013 MOA-ID Workshop Anwendungsintegration, Installation und Konfiguration Graz, 25.06.2013 Das E-Government Innovationszentrum ist eine gemeinsame Einrichtung des Bundeskanzleramtes und der TU Graz Überblick»

Mehr

WildFly Application Server Administration

WildFly Application Server Administration WildFly Application Server Administration Seminarunterlage Version: 1.04 Version 1.04 vom 18. Januar 2017 Dieses Dokument wird durch die veröffentlicht.. Alle Rechte vorbehalten. Alle Produkt- und Dienstleistungs-Bezeichnungen

Mehr

Webseiten-Bericht für fantomw.ru

Webseiten-Bericht für fantomw.ru Webseiten-Bericht für fantomw.ru Generiert am 20 Januar 2017 21:16 PM Der Wert ist 47/100 SEO Inhalte Seitentitel 403 Forbidden Länge : 13 Perfekt, denn Ihr Seitentitel enthält zwischen 10 und 70 Anzahl

Mehr

Vaadin TouchKit. W3L AG info@w3l.de 10.2012

Vaadin TouchKit. W3L AG info@w3l.de 10.2012 1 Vaadin TouchKit W3L AG info@w3l.de 10.2012 2 Inhaltsverzeichnis Einführung Software-Plattformen TouchKit-Plug-In Integrationsmöglichkeiten Vaadin-TouchKit-Projekt GUI-Komponenten Live-Demo Geräte-Unterstützung

Mehr

Eine technische Plattform für Smart-Client-Systeme. Alexander Ziegler

Eine technische Plattform für Smart-Client-Systeme. Alexander Ziegler Eine technische Plattform für Smart-Client-Systeme Alexander Ziegler Agenda Ausgangssituation Smart Client Ansatz Technische Kernthemen Erfahrungen 1 Agenda Ausgangssituation Smart Client Ansatz Erfahrungen

Mehr

Skalierbare Webanwendungen mit Python und Google App Engine

Skalierbare Webanwendungen mit Python und Google App Engine Skalierbare Webanwendungen mit Python und Google App Engine Oliver Albers 03. Juli 2008 1/32 Einführung Worum geht es? Pro und Contra Technik Genereller Aufbau Anwendungskonfiguration Verarbeitung von

Mehr

ZenQuery - Enterprise Backend as a Service Single Page Applications mit AngularJS und Spring MVC. - Björn Wilmsmann -

ZenQuery - Enterprise Backend as a Service Single Page Applications mit AngularJS und Spring MVC. - Björn Wilmsmann - ZenQuery - Enterprise Backend as a Service Single Page Applications mit AngularJS und Spring MVC - Björn Wilmsmann - ZenQuery Enterprise Backend as a Service Unternehmen horten Daten in Silos ZenQuery

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

Datenbanksysteme SS 2007

Datenbanksysteme SS 2007 Datenbanksysteme SS 2007 Frank Köster (Oliver Vornberger) Institut für Informatik Universität Osnabrück Kapitel 9d: Datenbankapplikationen Architektur einer Web-Applikation mit Servlets, JSPs und JavaBeans

Mehr

Dreamweaver Arbeiten mit HTML-Vorlagen

Dreamweaver Arbeiten mit HTML-Vorlagen Publizieren auf dem NiBiS Kersten Feige Nicole Y. Männl 13.11.2002, 8.30-13.00 Uhr 19.11.2002, 8.30-13.00 Uhr Dreamweaver Arbeiten mit HTML-Vorlagen Voraussetzungen zum Arbeiten mit HTML-Vorlagen Starten

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

Jens Ferner. Profikurs PHP-Nuke

Jens Ferner. Profikurs PHP-Nuke Jens Ferner Profikurs PHP-Nuke Einsatz, Anpassung und fortgeschrittene Progammierung PHP-Nuke vom Start bis zur strukturierten Anwendung - Mit umfassender interner Funktionsreferenz 2., verbesserte und

Mehr

Literatur und Links. Webtechnologien WS 2015/16 Teil 1/Entwicklung

Literatur und Links. Webtechnologien WS 2015/16 Teil 1/Entwicklung Literatur und Links [1-1] Seidler, Kai; Vogelsang, Kay: Das XAMPP Handbuch. Addison-Wesley, 2006 [1-2] http://www.apachefriends.org/download.html http://sourceforge.net/projects/xampp/files/ [1-3] http://aktuell.de.selfhtml.org/extras/download.shtml

Mehr

G s e a s m a t m ar a ch c i h tek e tur u I und IoC

G s e a s m a t m ar a ch c i h tek e tur u I und IoC Gesamtarchitektur I und IoC Schichten einer Web-Anwendung Initiiert durch J2EE und Spring: Strukturierte Sicht auf UI und Fachlogik (Domäne) Ergibt 5 Schichten: Man unterscheidet Präsentations- und Domänenmodell!

Mehr