Apache Tapestry: Einstieg in die komponentenorientierte Webentwicklung
Von Christian Köberl
()
Über dieses E-Book
Mehr von Christian Köberl lesen
Achtung Steinschlag!: Asteroiden und Meteoriten: Tödliche Gefahr und Wiege des Lebens Bewertung: 0 von 5 Sternen0 Bewertungen
Ähnlich wie Apache Tapestry
Titel in dieser Serie (100)
Zend Framework 2: Für Einsteiger und Umsteiger Bewertung: 0 von 5 Sternen0 BewertungenJavaScript für Eclipse-Entwickler: Orion, RAP und GWT Bewertung: 0 von 5 Sternen0 BewertungenIT Wissensmanagement: Theorie und Praxis Bewertung: 0 von 5 Sternen0 BewertungenHTML5 Security Bewertung: 0 von 5 Sternen0 BewertungenEinstieg in Google Go Bewertung: 0 von 5 Sternen0 BewertungenJavaScript auf dem Server Bewertung: 0 von 5 Sternen0 BewertungenNFC: Near Field Communication für Android-Entwickler Bewertung: 5 von 5 Sternen5/5HTML5 für Mobile Web Bewertung: 0 von 5 Sternen0 BewertungenSkalierbare Softwaresysteme: Design, Betrieb und Optimierungspotenziale Bewertung: 0 von 5 Sternen0 BewertungenUser Experience Testing 3.0: Status Quo, Entwicklung und Trends Bewertung: 0 von 5 Sternen0 BewertungenAlgorithmen: Grundlagen und Implementierung Bewertung: 0 von 5 Sternen0 BewertungenServiceorientierte Architektur: Anforderungen, Konzeption und Praxiserfahrungen Bewertung: 0 von 5 Sternen0 BewertungenErfolgreiche Spieleentwicklung: OpenGL, OpenAL und KI Bewertung: 0 von 5 Sternen0 BewertungenJava EE Security Bewertung: 0 von 5 Sternen0 BewertungenUX Design für Tablet-Websites: Ein Überblick Bewertung: 0 von 5 Sternen0 BewertungenErfolgreiche Spieleentwicklung: OpenCL Bewertung: 0 von 5 Sternen0 BewertungenGeolocation mit PHP: Foursquare-API, Google Places & Qype Bewertung: 0 von 5 Sternen0 BewertungenADF - Mobile Apps entwickeln und Swing ablösen: Mobile Apps entwickeln und Swing ablösen Bewertung: 0 von 5 Sternen0 BewertungenÜberzeugende Präsentationen: Konzeption, Technik und Design Bewertung: 0 von 5 Sternen0 BewertungenApache Tapestry: Einstieg in die komponentenorientierte Webentwicklung Bewertung: 0 von 5 Sternen0 BewertungenTFS 2012 Versionskontrolle: Grundlagen, Check-In Policies und Branch-Modelle Bewertung: 0 von 5 Sternen0 BewertungenQualitätssicherung mit JavaScript und PHP Bewertung: 0 von 5 Sternen0 BewertungenMobile Business: Was Entscheider morgen wissen müssen Bewertung: 0 von 5 Sternen0 BewertungenJava 7: Fork-Join-Framework und Phaser Bewertung: 0 von 5 Sternen0 BewertungenNutzeraspekte in Suchmaschinen: Komponenten für eine gelungene Usability-Gestaltung Bewertung: 0 von 5 Sternen0 BewertungenQualität in IT-Architekturen: Strategie und Planung Bewertung: 0 von 5 Sternen0 BewertungenAmazon Web Services für .NET Entwickler Bewertung: 0 von 5 Sternen0 BewertungenSharePoint-Entwicklung für Einsteiger Bewertung: 0 von 5 Sternen0 BewertungenNintex Workflow: Konzepte und Strategien für leistungsfähige SharePoint-Workflows Bewertung: 0 von 5 Sternen0 BewertungenJava EE 7: Ein Ausblick Bewertung: 0 von 5 Sternen0 Bewertungen
Ähnliche E-Books
Webseiten-Layout mit CSS: Der perfekte Einstieg in Cascading Style Sheets Bewertung: 0 von 5 Sternen0 BewertungenJavaScript für Java-Entwickler Bewertung: 0 von 5 Sternen0 BewertungenHTML 5 meets GWT Bewertung: 0 von 5 Sternen0 BewertungenDurchstarten mit React: Web-Apps einfach und modular entwickeln Bewertung: 0 von 5 Sternen0 BewertungenMagento Entwicklung: Themes, Widgets und Eigene Entitäten Bewertung: 0 von 5 Sternen0 BewertungenVue.js kurz & gut Bewertung: 0 von 5 Sternen0 BewertungenWebentwicklung mit dem Play Framework Bewertung: 0 von 5 Sternen0 BewertungenJava EE 6: Enterprise-Anwendungsentwicklung leicht gemacht Bewertung: 0 von 5 Sternen0 BewertungenJavaScript und TypeScript für C#-Entwickler Bewertung: 0 von 5 Sternen0 BewertungenOpenLaszlo: schnell + kompakt Bewertung: 0 von 5 Sternen0 BewertungenSpring Boot und Spring Cloud Bewertung: 5 von 5 Sternen5/5Bootstrap kurz & gut Bewertung: 0 von 5 Sternen0 BewertungenAngular 2: Moderne Frontends für alle Plattformen entwickeln Bewertung: 0 von 5 Sternen0 BewertungenBarrierefreiheit - Handwerkszeug und technisches Verständnis: Handwerkszeug und technisches Verständnis Bewertung: 0 von 5 Sternen0 BewertungenModerne Webanwendungen mit AngularJS Bewertung: 0 von 5 Sternen0 BewertungenASP.NET Core: Eine Einführung Bewertung: 0 von 5 Sternen0 BewertungenProgressive Web-Apps: Offlinefähige Web-Anwendungen mit nativen Qualitäten Bewertung: 0 von 5 Sternen0 BewertungenDSL mit Xtext/Xtend. Luecken(x)text Bewertung: 0 von 5 Sternen0 BewertungenApache Tamaya: Einstieg in die Konfiguration in Java Bewertung: 0 von 5 Sternen0 BewertungenJavaScript und Ajax: Das Praxisbuch für Web-Entwickler Bewertung: 0 von 5 Sternen0 BewertungenStructr: Quelloffenes Daten-CMS auf Neo4j-Basis Bewertung: 0 von 5 Sternen0 BewertungenTestgetriebene Entwicklung mit JavaScript: Das Handbuch für den professionellen Programmierer Bewertung: 0 von 5 Sternen0 BewertungenModerne Datenzugriffslösungen mit Entity Framework 6 Bewertung: 0 von 5 Sternen0 BewertungenJavaScript kurz & gut Bewertung: 3 von 5 Sternen3/5WordPress-Tricks und -Tweaks: Bohren Sie WordPress mit selbst programmierten Funktionen auf! Bewertung: 0 von 5 Sternen0 BewertungenWicket: Komponentenbasiert und objektorientiert - das alternative Java-Webframework Bewertung: 0 von 5 Sternen0 BewertungenjQuery Mobile: Einfach mobile Web-Apps entwickeln Bewertung: 0 von 5 Sternen0 BewertungenMicrosoft AJAX: AJAX Libary, ASP .NET 2.0 Extensions, AJAX Control Toolkit Bewertung: 0 von 5 Sternen0 BewertungenSoftware entwickeln mit C#, WPF und dem MVVM-Konzept Bewertung: 0 von 5 Sternen0 BewertungenVaadin mit Eclipse, Clojure und OSGi Bewertung: 0 von 5 Sternen0 Bewertungen
Internet & Web für Sie
Das kleine Hypnose Einmaleins - Alles was Sie schon immer über die Hypnose wissen wollten von Ewald Pipper vom Hypnoseinstitut Bewertung: 0 von 5 Sternen0 BewertungenSEO & WordPress Schnelleinstieg: Plugins, Keywords-entscheidend für die SEO Optimierung Bewertung: 0 von 5 Sternen0 BewertungenWas kommt. Was geht. Was bleibt.: Kluge Texte über die wichtigsten Fragen unserer Zeit Bewertung: 0 von 5 Sternen0 BewertungenPraxisbuch WordPress Themes Bewertung: 0 von 5 Sternen0 BewertungenWordPress-Themes entwickeln: HTML5, CSS3, JavaScript und PHP: Praxiswissen und Quellcodes zum Entwurf von WordPress-Themes Bewertung: 0 von 5 Sternen0 BewertungenChatGPT Plus: Durchstarten in eine neue Welt: Entdecken Sie Künstliche Intelligenz mit ChatGPT Plus und GPT-4 Bewertung: 0 von 5 Sternen0 BewertungenSchnelleinstieg WordPress SEO: Einstellungen, Keywords, Plug-ins und Strategien für optimales SEO Bewertung: 0 von 5 Sternen0 BewertungenPHP für WordPress: Themes und Templates selbst entwickeln Bewertung: 0 von 5 Sternen0 BewertungenProgrammieren lernen mit Python 3: Schnelleinstieg für Beginner Bewertung: 0 von 5 Sternen0 BewertungenSo findest du den Einstieg in WordPress: Die technischen Grundlagen zu Installation, Konfiguration, Optimierung, Sicherheit, SEO Bewertung: 0 von 5 Sternen0 BewertungenMarketing für Selbständige: Schwerpunkt Social Media Bewertung: 0 von 5 Sternen0 BewertungenDas Prezi-Buch für spannende Präsentationen Bewertung: 0 von 5 Sternen0 BewertungenSEO mit Google Search Console: Webseiten mit kostenlosen Tools optimieren Bewertung: 0 von 5 Sternen0 BewertungenDer Content Faktor: Schreiben Sie Texte, die gefunden und gelesen werden Bewertung: 0 von 5 Sternen0 BewertungenEinfach Verschlüsseln Bewertung: 0 von 5 Sternen0 BewertungenUX-Missverständnisse: Was sich User wirklich wünschen Bewertung: 0 von 5 Sternen0 BewertungenWir machen dieses Social Media Bewertung: 0 von 5 Sternen0 BewertungenBug Bounty Hunting mit Kali-Linux oder Parrot Security OS: Hacking als Hautberuf oder Nebenjob Bewertung: 3 von 5 Sternen3/5Android Security: Von Fake-Apps, Trojanern und Spy Phones Bewertung: 0 von 5 Sternen0 BewertungenReact lernen und verstehen Bewertung: 0 von 5 Sternen0 BewertungenPR im Social Web: Das Handbuch für Kommunikationsprofis Bewertung: 0 von 5 Sternen0 BewertungenDas Facebook-Marketing-Buch Bewertung: 4 von 5 Sternen4/555 Artikelideen für Ihr Blog (Tipps für attraktive Blogposts und erfolgreiches Bloggen) Bewertung: 0 von 5 Sternen0 BewertungenEinstieg in WordPress Bewertung: 0 von 5 Sternen0 BewertungenNext Level JavaScript: Schlagworte Bewertung: 0 von 5 Sternen0 BewertungenEinführung ins Darknet: Darknet ABC Bewertung: 0 von 5 Sternen0 Bewertungen30 Minuten Metaverse Bewertung: 0 von 5 Sternen0 BewertungenopenHAB: Automatisiertes Heim - Teil 1 Bewertung: 4 von 5 Sternen4/5HTML5 & CSS3 (Prags) Bewertung: 0 von 5 Sternen0 Bewertungen
Rezensionen für Apache Tapestry
0 Bewertungen0 Rezensionen
Buchvorschau
Apache Tapestry - Christian Köberl
Christian Köberl
Apache Tapestry
Einstieg in die komponentenbasierte Webentwicklung
ISBN: 978-3-86802-438-8
© 2012 entwickler.press
Ein Imprint der Software & Support Media GmbH
1 Skalierbare komponentenorientierte Webapplikationen effizient entwickeln
Für die Entwicklung komponentenorientierter Webapplikationen gibt es eine kleine Auswahl an Frameworks. Aber ob man sich mit dem Standard-JSF quält oder auch einen anderen Weg wie Vaadin einschlägt – immer muss man Kompromisse eingehen. Einige Frameworks eignen sich gut für Applikationen, die als Rich Client entwickelt wurden, andere eher für klassische Webseiten. Tapestry versucht hier die Brücke zu schlagen und für beide Arten von Webapplikationen die beste Unterstützung zu bieten.
Nach einem meiner Tapestry-Einführungsworkshops kam ein Teilnehmer auf mich zu und fragte, warum ein so „geniales" Framework wie Tapestry [1] im deutschsprachigen Raum eigentlich so unbekannt sei. Er habe noch nie etwas darüber gelesen. Dabei konnte man es doch nicht belassen – oder? Das Ergebnis: dieser shortcut soll dabei helfen Tapestry etwas bekannter zu machen.
Ein wenig Tapestry-Geschichte
Im Jahr 2000 erstellte Howard Lewis Ship die erste Version von Tapestry, inspiriert durch das Framework WebObjects [2] (von Apple bzw. davor NeXT). Im Jahr 2003 wurde aus Tapestry 3 ein Apache-Projekt, zuerst noch unter Jakarta, ab dem Jahr 2006 dann ein Apache-Top-Level-Projekt. 2006 kam mit Tapestry 5 noch einmal eine große Änderung in der Basis von Tapestry: Die XML-basierte Konfiguration der Vorgängerversionen wurde durch Convention over Configuration und Java-basierte Konfiguration abgelöst. Dieser Bruch mit der Rückwärtskompatibilität wurde immer wieder als Kritikpunkt aufgeführt. Seither sind die Folgeversionen kompatibel, und Tapestry hat Kompatibilität sogar zu einem seiner vier Grundprinzipien erklärt. Die grundsätzliche Umstellung mit Tapestry 5 hat aber auch seine guten Seiten: Die dadurch gewonnene Flexibilität und Eleganz hätte man mit der Tapestry-4-Codebasis so nicht erreichen können. Im November 2011 wurde die aktuelle Tapestry-Version 5.3 fertiggestellt. Wichtige Neuerungen sind:
Template Skinning: Diese Erweiterung ermöglicht es, verschiedene Templates für verschiedene Stile oder Themes zu hinterlegen – was man z. B. nutzen kann, um separate Versionen für Desktop- und Mobile-Browser zu erstellen.
JavaScript- und CSS-Komprimierung: Vorige Versionen von Tapestry fügten bereits JavaScript-Dateien in eine zusammen. Mit Tapestry 5.3 werden nun JavaScripts und Style Sheets per YUI Compressor [3] komprimiert. Dadurch ergeben sich schnellere Ladezeiten von Seiten, da Roundtrips und Größe der Downloads minimiert werden.
Neue Komponenten: Alerts und Tree: Alerts sammeln Infos, Warnungen und Fehler während des Requests und zeigen diese dem User in der Alerts-Komponente an. Das ist vor allem in Zusammenhang mit AJAX-Requests sehr nützlich, da einfach Feedback an den User gegeben werden kann. Tree stellt – wie der Name schon sagt – einen Baum analog zum Windows Explorer dar. Bisher hatte Tapestry keine Komponenten zur Darstellung von Baumstrukturen. Man musste auf Komponentenbibliotheken oder eigene Implementierungen zurückgreifen.
Los geht’s
Am einfachsten lässt sich Tapestry anhand eines Beispiels erklären. Dafür kann man den Maven-Archetype von Tapestry verwenden. Mit dessen Hilfe lässt sich ganz unkompliziert ein Grundgerüst für eine Applikation mit einigen Seiten und Komponenten erstellen. Voraussetzungen dafür sind eine Maven-Installation [4] (2.2.x oder 3.0.x) und ein Internetzugang. Für die Erstellung gibt man folgendes Kommando ein