Ansicht umschalten
Avatar von cryptos
  • cryptos

mehr als 1000 Beiträge seit 04.12.2000

JSF und Ajax

Also schön, ich versuche mal etwas Licht ins Dunkel zu bringen.

JavaServer Faces (JSF) sind eine serverseitige Technologie, die auf
der Servlet-Spezifikation aufsetzen. Wenn man Servlets in ihrer rohen
Form verwendet, muss man HTML-Elemente direkt als Text ausgeben. Bei
einem Button mag das noch ok sein, aber spätestens bei
Auswahlfeldern, die aus einer Datenbank gespeist werden, wird es
ekelig. Genau an dieser Stelle tritt JSF in Aktion. JSF stellt für
verschiedene Zwecke Komponenten bereit, die sich bei der Entwicklung
ebenso komfortabel handhaben lassen wie Komponenten klassicher
GUI-Frameworks wie Swing.

Bei JSF gibt es einen bestimmten Ablauf einzelner Schritte, die es
ermöglichen, sich an verschiedenen Stellen der Verarbeitung
einzuklinken. So werden vom Framework z.B. automatisch die übergebene
Werte in Objekte konvertiert und umgekehrt werden Objekte (z.B. eine
Kreditkartennummer) bei der Ausgabe wieder zu Strings.

Gut erklärt ist das in dem Buch "Core JavaServer Faces"
http://www.horstmann.com/corejsf/

Was man damit für schöne Sachen machen kann, lässt sich z.B. unter
http://myfaces.apache.org/tomahawk/jscookmenu.html bewundern.

Nun stellt sich immer die Frage, was man auf dem Server und was auf
dem Client machen kann und soll. Ajax ist eine reine
Client-Geschichte, wo mit JavaScript die dargestellte Seite direkt
geändert wird, ohne sie komplett vom Server neu zu laden. Dazu
arbeitet im Browser im Hintergrund ein JavaScript, dass kleine
XML-Häppchen mit dem Server austauscht. Statt jedesmal eine Funktion
in JavaScript von Hand in den HTML-Code zu friemeln, die z.B.
Einträge in einer Tabelle sortiert, könnte man natürlich auch gleich
eine serverseitige Komponente um diese Funktion anreichern, die dann
den passenden JavaScript-Code gleich mit ausliefert. Man könnte das
sogar so schlau machen, dass der Server alles übernimmt, wenn der
Client JavaScript deaktiviert hat.

Ich hoffe, du hast jetzt eine grobe Vorstellung von der Sache.

cryptos
Bewerten
- +
Ansicht umschalten