Aus der Einleitung: Das Hauptziel vieler kommerzieller Websites ist sicher unter anderem der Verkauf von Produkten. Um dieses zu realisieren, sollen neue Kunden geworben und die Möglichkeiten des Internets voll ausgeschöpft werden. In den letzten Jahren sind die Ansprüche der Benutzer stark gewachsen und sie erwarten auf der Website zunehmend eine "individuelle" Behandlung. Erfolgreiche E-Commerce-Sites gehen somit weit über die reine Präsentation des eigenen Angebots hinaus und verbinden die Shoppingangebote (Commerce) mit einem Angebot aus redaktionellen Inhalten zur Information und Unterhaltung des Kunden (Content) und verschiedensten Möglichkeiten der Kommunikation und Interaktion (Community). In dem E-Commerce Dreieck "ContentCommunityCommerce" wird der Content als der initiale Bestandteil der E-Business-Strategien angesehen. Und Content bedarf nicht nur eines Redaktionssystems für die Aktualisierung. Vielmehr wird die Website zunehmend in die Geschäftsprozesse der Unternehmen integriert, ein Content-Management-System wird somit fester Bestandteil der IT-Infrastruktur. Content Management Anwendungen stellen für Unternehmen die Chance einer attraktiven und einfach zu pflegenden Präsenz im Internet dar. Web Content Management Systeme sind dabei die technologische Basis zum Aufbau dieser Anwendungen. Das Content Management gewinnt durch die Flut an Informationen immer mehr an Bedeutung. Dabei geht es weniger um die bloße Bearbeitung, Darstellung und Veröffentlichung von Informationen, als vielmehr um die Zusammenführung von Inhalten unterschiedlichster Herkunft und Formate zur Ausgabe auf beliebigen Medien. Ziel ist es, Inhalte beliebiger Art, welche mit den unterschiedlichsten Werkzeugen von einer Vielzahl von Mitarbeitern erstellt wurden, vom Arbeitsplatz "abzuholen" und ihrer geplanten Verwendung zuzuführen. Der Content soll dabei möglichst automatisch aufbereitet und, wenn erforderlich, über verschiedene Medien verteilt und nutzbar gemacht werden. Content Mangement sollte daher nicht als Marketing-Hype, sondern eher als langfristige und essentielle Investition aufgefasst werden. Ein Web Content Management System, meist eine Web-Anwendung mit komplexer HTML-Präsentationsschicht, muss aufgrund der beschriebenen Anforderungen großen Ansprüchen auf Benutzerseite gerecht werden. Dadurch steigen die Anforderungen an die im Backend verwendete Systemarchitektur, und auch die Ansprüche der damit verbundenen Entwicklung von solchen Enterprise Web Anwendungen verändern sich damit grundlegend. Für die Entwicklung ist daher eine Software-Architektur hilfreich, die bereits eine robuste und skalierbare Basis bereitstellt, um mehrschichtige Applikation zu implementieren. Durch die ständig steigende Konkurrenz spielt auch der Zeitfaktor eine wesentliche Rolle. Deshalb ist es wichtig, neue Applikationen allgemein schneller zu produzieren. Darüber hinaus sollen diese neuen Applikationen leicht erweitert und verbessert werden können. Aktuell stehen den Entwicklern eine Vielzahl verschiedener Konzepte und Techniken für die Realisierung einer Enterprise Web-Anwendung zur Verfügung. Die J2EE-Spezifikation schlägt hierbei Wege vor, wie man die Applikationsfunktionalität unterteilen kann. Das Ziel dieser Vorgehensweise ist es, eine mehrschichtige Applikation zu erzeugen, dessen Einzelkomponenten besser handhabbar sind. Ein weiterer Vorteil ist, dass die Einzelkomponenten dadurch besser wartbar und erweiterbar werden. Die Firma Web Arts vertreibt ein WCMS, welches einige architekturbedingte, also das Backend betreffende, Schwächen aufweist. Ziel ist es eine Basis zu finden die vorhandenen Mängel durch Einsatz neuer Konzepte zu beheben. Es macht hierbei jedoch nur wenig Sinn, bereits vorhandene Funktionalitäten neu zu entwickeln. Es existieren eine Reihe von Open-Source-Web-Frameworks auf J2EE-Basis, die den Entwickler beim strukturierten Aufbau und bei der Entwicklung von komplexen Web-Applikationen mit einem robusten Rahmenwerk unterstützen. Das Ziel dieser Arbeit ist es zu untersuchen, ob sich Web-Frameworks als Basis für ein WCMS eignen. Es wird untersucht, ob sich mit dessen Vorgaben komplexe Web-Anwendungen wie etwa die eines Web Content Management Systems entwickeln lassen. Dabei wird auch analysiert, inwieweit das Framework spezielle Merkmale eines WCMS unterstützt. Neben der J2EE-Technologie hat sich XML im Web etabliert und ist zu einer der Kern-Technologien mit vielen Vorteilen geworden. Es ist daher aus vielen Gründen sinnvoll eine Architektur anzustreben, die XML-Technologien grundlegend unterstützt. Der Einsatz von XML rechtfertigt sich jedoch nicht aus sich selbst heraus. Die Arbeit zeigt, dass XML für viele Bereiche die Rolle eines Integrators übernimmt, um bestehende Techniken und Ideen in einem Integrationsprozess zum wirtschaftlichen und technischen Erfolg zu führen. Vor allem für WCMS ist XML daher eine Kerntechnologie, die sich immer weiter in Richtung Integrations-Portale weiterentwickelt. Inhaltsverzeichnis: 1.Einleitung1 1.1Motivation2 1.2Umfeld und Aufbau der Arbeit3 1.2.1Das Unternehmen Web-Arts3 1.2.2Aufbau der Arbeit3 2.Grundlagen des Webpublishing5 2.1Konzepte des Webpublishing5 2.2Content Management6 2.3Herkömmliches Webpublishing8 2.4Web Content Management10 2.4.1Grundanforderungen an ein WCMS11 2.4.2Nutzen und Leistungen eines WCMS11 3.Technologien und Konzepte für Web-Applikationen19 3.1Content Repository19 3.2Serverkonzepte20 3.2.1J2EE Web-Application-Server21 3.3J2EE Web-Application24 3.4XML basiertes Web Development25 3.5Java und XML26 3.5.1Content Management und XML27 3.5.2Serverside XML29 3.6Web-Frameworks und das MVC Model 233 3.7Three-Tier-Anwendungen36 4.Analyse39 4.1Ist-Analyse39 4.2Soll-Analyse41 4.3Die Entwicklung mit einem Framework44 4.4Framework-Architekturen für Web-Applikationen46 4.4.1View Technologie48 4.4.2XML-Pipelines48 4.4.3Aktionsgesteuerte Frameworks49 4.4.4Event- und Listener gesteuerte Frameworks50 4.4.5Komponententechnologien bei Web-Frameworks50 4.5Analyse der Web-Frameworks51 4.6Cocoon52 4.6.1Die Architektur von Cocoon53 4.6.2Untersuchung der Anforderungen67 4.6.3Bewertung Cocoon70 4.7JavaServer Faces71 4.7.1Die Architektur von JSF73 4.7.2Untersuchung der Anforderungen83 4.7.3Bewertung JavaServer Faces86 4.8StrutsCX88 4.8.1Die Architektur von Struts und StrutsCX89 4.8.2Untersuchung der Anforderungen101 4.8.3Bewertung von Struts und StrutsCX104 4.9Fazit der Untersuchung106 5.Erstellen einer Web-Applikation mit JSF und XML108 5.1Die ideale Architektur109 5.2Konstruktion110 5.2.1Erstellung der Custom Components112 5.2.2Erstellung der Custom Renderer118 5.2.3Sax-Events und XSLT122 5.2.4Ergebnis und Ausblick128 6.Fazit130 Literaturverzeichnis132 Abbildungsverzeichnis139 Inhaltsangabe:Einleitung: Das Hauptziel vieler kommerzieller Websites ist sicher unter anderem der Verkauf von Produkten. Um dieses zu realisieren, sollen neue Kunden geworben und die Möglichkeiten des Internets voll ausgeschöpft werden. In den letzten Jahren sind die Ansprüche der Benutzer stark gewachsen und sie erwarten auf der Website zunehmend eine "individuelle" Behandlung. Erfolgreiche E-Commerce-Sites gehen somit weit über die reine Präsentation des eigenen Angebots hinaus und verbinden die Shoppingangebote (Commerce) mit einem Angebot aus redaktionellen Inhalten zur Information und Unterhaltung des Kunden (Content) und verschiedensten Möglichkeiten der Kommunikation und Interaktion (Community). In dem E-Commerce Dreieck "ContentCommunityCommerce" wird der Content als der initiale Bestandteil der E-Business-Strategien angesehen. Und Content bedarf nicht nur eines Redaktionssystems für die Aktualisierung. Vielmehr wird die Website zunehmend in die Geschäftsprozesse der Unternehmen integriert, ein Content-Management-System wird somit fester Bestandteil der IT-Infrastruktur. Content Management Anwendungen stellen für Unternehmen die Chance einer attraktiven und einfach zu pflegenden Präsenz im Internet dar. Web Content Management Systeme sind dabei die technologische Basis zum Aufbau dieser Anwendungen. Das Content Management gewinnt durch die Flut an Informationen immer mehr an Bedeutung. Dabei geht es weniger um die bloße Bearbeitung, Darstellung und Veröffentlichung von Informationen, als vielmehr um die Zusammenführung von Inhalten unterschiedlichster Herkunft und Formate zur Ausgabe auf beliebigen Medien. Ziel ist es, Inhalte beliebiger Art, welche mit den unterschiedlichsten Werkzeugen von einer Vielzahl von Mitarbeitern erstellt wurden, vom Arbeitsplatz "abzuholen" und ihrer geplanten Verwendung zuzuführen. Der Content soll dabei möglichst automatisch aufbereitet und, wenn erforderlich, über verschiedene Medien verteilt und nutzbar gemacht werden. Content Mangement sollte daher nicht als Marketing-Hype, sondern eher als langfristige und essentielle Investition aufgefasst werden. Ein Web Content Management System, meist eine Web-Anwendung mit komplexer HTML-Präsentationsschicht, muss aufgrund der beschriebenen Anforderungen großen Ansprüchen auf Benutzerseite gerecht werden. Dadurch steigen die Anforderungen an die im Backend verwendete Systemarchitektur, und auch die Ansprüche der damit verbundenen Entwicklung von solchen [...
|