ICEfaces

ICEfaces
ICEfaces
Entwickler ICEsoft
Aktuelle Version 2.0.2
(13. Mai 2011)
Betriebssystem plattformübergreifend
Programmier­sprache Java
Kategorie Webframework, Ajax, Java
Lizenz MPL
www.icefaces.org

ICEfaces ist ein auf JavaServer Faces (JSF) basierendes Ajax-Framework für Java, welches durch ICEsoft entwickelt wird. Seit November 2006 steht das Projekt neben einer kommerziellen Lizenz auch unter der Mozilla Public License (MPL) zur Verfügung.

ICEfaces verfügt über eine umfangreiche Bibliothek an Komponenten für die Benutzerschnittstelle mit eingebauter Ajax-Funktionalität. Dazu gehören beispielsweise Bäume, Tabs und Menüs. Diese Komponenten können in einer standardkonformen JSF-Seite verwendet werden. Im Gegensatz zu den üblichen Komponenten einer Webseite können diese jedoch über Ajax mit dem Webcontainer kommunizieren und bei Bedarf Daten nachladen ohne dass die gesamte Webseite neu geladen wird. Der Entwickler muss sich dabei nicht um die Details dieser Kommunikation kümmern, da diese im Hintergrund transparent abläuft. Mit ICEfaces lassen sich so Rich Internet Application (RIA) entwickeln, ohne JavaScript programmieren zu müssen. Der schlussendlich im Browser ausgeführte JavaScript-Code wird durch das Framework zur Laufzeit generiert.

Im Vergleich mit anderen Ajax-Frameworks für Java wie z. B. dem Google Web Toolkit (GWT) bietet ICEfaces den Vorteil, dass es nahtlos in die Java EE Architektur hineinpasst indem es auf bestehenden Standards aufbaut. Zu diesen Standards gehören wie bereits oben erwähnt JSF, aber auch Facelets und Portlets. Für die Entwicklung können die herkömmlichen Java-Entwicklungsumgebungen eingesetzt werden und es sind keine Erweiterungen wie z.B. ein spezielles Plug-in notwendig. Zum Ausführen einer ICEfaces-Applikation im Browser sind ebenfalls keinerlei Plug-ins notwendig.

Die mit ICEfaces erreichte Abstraktion mit der Möglichkeit eine Ajax-Applikation vollständig in Java und somit mit nur einer Programmiersprache erstellen zu können, erlaubt es die Ajax-Technologie in einem breiterem Umfeld einzusetzen.

ICEfaces im Überblick

Rich Client Funktionalität
Mit ICEfaces lassen sich Rich Client basierte Java-EE-Anwendungen erstellen, hierzu stehen mehr als 50 Komponenten zur Verfügung.
Open Source
Die Icefaces-Community hat mittlerweile über 45.000 registrierte Nutzer, das Forum wird aktiv von Icesoft-Mitarbeitern betreut. Das Geschäftsmodell von Icesoft basiert allerdings auf kostenpflichtiger technischer Unterstützung und Schulungen.
Standardorientiert
ICEfaces ist eine reine auf JSF basierte Java-Enterprise-Lösung, Entwicklern ist es somit möglich, in ihrer gewohnten Entwicklungsumgebung zu arbeiten. Darüber hinaus gibt es bereits zahlreiche Plugins für bekannte Entwicklungsumgebungen wie Eclipse oder NetBeans.
Transparentes Ajax
ICEfaces bietet mit umfangreichen Komponentenbibliothek die Möglichkeit für Java/JSF Entwickler, Ajax-Anwendungen mit minimalem Aufwand zu erstellen. Hierbei ist keinerlei JavaScript-Wissen notwendig, lediglich JSF-Know-How.
Integrationsfähigkeit
ICEfaces ermöglicht die gemeinsame Nutzung gängiger Java Frameworks, IDEs und Application Server sowie Komponenten von Drittanbietern und JavaScript-Effect-Bibliotheken.
Ajax Push
Die als Ajax Push bezeichnete Technologie ermöglicht ein serverbasiertes Rendering von Inhalten auf dem Browser. Ajax Push ermöglicht die asynchrone Kommunikation zwischen Client Browser und Server, sodass ein Nachladen von geändertem Inhalt ohne das Absenden eines neuen Requests ermöglicht wird.

Vergleich mit GWT

Wie auch das GWT und andere vergleichbare Techniken unterstützt IceFaces die komponentengestützte Entwicklung von Rich Internet Applications. Das dynamische Verhalten basiert in beiden Fällen auf asynchroner Kommunikation zwischen Client (Webbrowser) und Server (Web- bzw. Applikationserver) (Ajax). Ein wichtiger Unterschied zwischen beiden Ansätzen ist die client- bzw. serverseitige Generierung des UI-Markups. IceFaces erzeugt das Markup serverseitig und integriert es dann dynamisch mittels einfacher Javascript-Funktion in den aktuellen Dokumentenbaum. Das GWT überträgt nicht das Markup selbst, sondern die Daten, die zu seiner Erzeugung nötig sind z.B. Datenbankinformationen. Das Markup wird dann clientseitig erzeugt und aktualisiert. Daraus ergeben sich folgende Differenzen:

  • höhere Anforderungen und Rechenlast für den Client durch das GWT, die bei Mobilbrowsern (z.B. iPhone, iPad oder Windows Mobile-Systemen) Probleme bereiten können
  • höhere Netzwerklast bei der Verwendung von IceFaces, da das Markup umfangreicher ist als die Anwendungsdaten
  • längere Erstladezeiten beim GWT und schnellere Reaktion auf Nutzeraktionen innerhalb der Session (Reaktionsverhalten ähnlich zu Desktopanwendungen)
  • GWT-Anwendungen sind unabhängiger vom Server und damit auch bei Unterbrechung der Client-Server-Verbindung länger funktionsfähig

Weblinks


Wikimedia Foundation.

Игры ⚽ Поможем написать курсовую

Schlagen Sie auch in anderen Wörterbüchern nach:

  • ICEfaces — infobox software name = ICEfaces author = ICEsoft Technologies Inc. latest release version = [http://www.icefaces.org/main/downloads 1.7.1 ] latest release date = 2008 06 17 latest preview date = 2008 06 17 genre = Ajax, Java, JSF, Framework… …   Wikipedia

  • Comet (programming) — Comet is a web application model in which a long held HTTP request allows a web server to push data to a browser, without the browser explicitly requesting it.[1][2] Comet is an umbrella term, encompassing multiple techniques for achieving this… …   Wikipedia

  • Java Server Faces — JavaServer Faces (kurz: JSF) ist ein Framework Standard zur Entwicklung von Benutzeroberflächen für Webapplikationen. Basierend auf Servlets und JSP Technologie, gehört JSF zu den Webtechnologien der Java Platform, Enterprise Edition (Java EE).… …   Deutsch Wikipedia

  • Vaadin — Тип Веб фреймворк Разработчик IT Mill Первый выпуск май 20, 2009 (2009 05 20) Аппаратная платформа Java Последняя версия 6.8.5 …   Википедия

  • OpenDJ — 2.4 Control Panel Initial release December 21, 2010; 10 months ago (2010 12 21) Stable release …   Wikipedia

  • PHP-Nuke — Original author(s) Francisco Burzi Stable release 8.2 / May 22, 2009; 2 years ago (2009 05 22 …   Wikipedia

  • Drupal — Drupal …   Wikipedia

  • OpenACS — Developer(s) OpenACS community Stable release 5.6.0 …   Wikipedia

  • Midgard (software) — For other uses, see Midgard (disambiguation). Midgard AJAX inline editing of content in Midgard …   Wikipedia

  • JavaServer Faces — (JSF) is a Java based Web application framework intended to simplify development of user interfaces for Java EE applications. Unlike other traditional request driven MVC web frameworks, JSF uses a component based approach. The state of UI… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”