This page (revision-7) was last changed on 16-Aug-2019 11:55 by Dieter Käppel

This page was created on 16-Aug-2019 08:38 by Dieter Käppel

Only authorized users are allowed to rename pages.

Only authorized users are allowed to delete pages.

Page revision history

Version Date Modified Size Author Changes ... Change note
7 16-Aug-2019 11:55 14 KB Dieter Käppel to previous
6 16-Aug-2019 11:55 14 KB Dieter Käppel to previous | to last
5 16-Aug-2019 11:54 12 KB Dieter Käppel to previous | to last
4 16-Aug-2019 11:35 12 KB Dieter Käppel to previous | to last
3 16-Aug-2019 11:30 9 KB Dieter Käppel to previous | to last
2 16-Aug-2019 09:43 1 KB Dieter Käppel to previous | to last
1 16-Aug-2019 08:38 1 KB Dieter Käppel to last

Page References

Incoming links Outgoing links

Version management

Difference between version and

At line 12 changed one line
* __JSF-Lifecycle:__ [AJAX]-Request mit voller Unterstützung des JSF-Lifecycles
* __JSF-Lifecycle:__ [AJAX|https://de.wikipedia.org/wiki/Ajax_(Programmierung)]-Request mit voller Unterstützung des JSF-Lifecycles
At line 14 changed one line
* __AJAX-Update:__ Die Tags unterstützen den vollen [AJAX]-Update mit JSF. Je nach Anforderung werden Daten auf unterschiedliche Weise persistiert
* __AJAX-Update:__ Die Tags unterstützen den vollen [AJAX|https://de.wikipedia.org/wiki/Ajax_(Programmierung)]-Update mit JSF. Je nach Anforderung werden Daten auf unterschiedliche Weise persistiert
At line 92 changed one line
!!!AJAX Requests
!!AJAX Requests
At line 160 added 35 lines
!!Method Expression Behavior
Die Klasse MethodExpressionBehavior ist ein WidgetBehavior, das das direkt mit einer EL-Method Expression verknüpft ist. Das Binding erfolgt an das Attribut mit dem Namen dieses MethodExpressionBehavior.
!!Value Expression Behavior
Wie MethodExpressionBehavior, allerdings wird hier eine EL-Value Expression gebunden.
!!Widget Input
Dieses Widget Element rendert einen HTML Tag <input> mit dem entsprechenden Attribut value="{<JSON>}" das aus dem Property "value" der Klasse gewonnen wird. Die Methode getValue ist abstrakt und wird bei der Implementierung überschrieben. Beim Abschicken des Input-Field durch einen Form- oder AJAX-Submit wird das Objekt mit einen JSON-Update aktualisiert (siehe [Jackson Update|https://www.logicbig.com/tutorials/misc/jackson/reader-for-updating.html]).
!!Widget Stylesheet
Mit dem Element WidgetStylesheet kann ein Stylesheet dynamisch gerendert werden. Das stellt die Methode encodeStyles(StylesheetWriter writer) zur Verfügung, mit der Bequem CSS-Styles generiert werden können. Bei Komponenten mit viel HTML-Code kann so HTML-Code reduziert werden, indem wiederholte Attribute "style" vermieden werden.
!!Eigene Widget Elements
WidgetElement, WidgetBehavior oder die anderen Ableitungen davon können weiter abgeleitet werden um eigene Elemente für das Widget zu generieren.
{{{
public class ScrollableElement extends WidgetBehavior<String> {
public ScrollableElement(String id) {
super(id);
}
@Override
public void encodeContent(FacesContext context) throws IOException {
ResponseWriter writer = context.getResponseWriter();
String prefix = getClientId() + UINamingContainer.getSeparatorChar(context);
writer.startElement("div", null);
writer.writeAttribute("id", prefix + "cells", null);
writer.writeAttribute("class", getParent().getWidgetStyleClass() + "-cells", prefix);
writer.endElement("div");
}
}
}}}
__Erklärung:__ Hier wurde WidgetBehavior abgeleitet um ein scrollbares <div>-Tag innerhalb des default-mäßigen <span>-Tags zu erzeugen. Eine entsprechende Client-Id und Style Klassen werden gesetzt.