JBOSS hat die erste GA-Version von JSFUnit veröffentlicht.
JSFUnit ist ein Testframework für JSF. Da es innerhalb des Webcontainers (Tomcat …)
abläuft, werden für die Tests keine Mock-Objekte benötigt.
Nach jedem Faces-Request ermöglicht es den Zugriff auf den FacesContext und damit auf die
gesamte JSF-Anwendung.
JSFUnit kann mit allen Servern die JSF unterstützen eingesetzt werden und unterstützt auch
die neue JSF 2.0 Version.
Georges Margaritis JSF JSF
Bei der Entwicklung generischer Facelets-Komponenten ist es oft erforderlich Methoden einer Managed Bean aufzurufen.
Das folgende Beispiel demonstriert so eine Komponente, die der Einfacheit halber nur aus einem CommandLink-Tag besteht. In dem Attribut “action” des Tag wird die Navigationsmethode einer ManagedBean aufgerufen.
Facelet-Komponente “commandLink.xhtml” :
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:t="http://myfaces.apache.org/tomahawk”>
<t:commandLink id=”#{id}” action=”#{bean[method]}” value=”#{value}”/>
</ui:composition>
Diese Facelet-Komponente kann nun in weiteren Facelets (nachdem sie in der taglib.xml deklariert wurde) parametrisiert aufgerufen werden :
<tf:commandLink
value=”TestCommandLink”
id=”anyId”
bean=”#{TestBean}”
method=”testCommandLink” />
In der Managed Bean “TestBean.java” ist die Navigationsmethode deklariert :
public String testCommandLink(){
return “navigationCase”;
}
Georges Margaritis JSF JSF Facelets
Ein sehr interessanter Artikel zu den “falschen Mythen” über Dojo, vom Mitbegründer von Dojo Dylan Schiemann.
Der Link dazu ist : http://www.sitepen.com/blog/2008/10/27/debunking-dojo-toolkit-myths
Georges Margaritis Ajax
<f:convertDateTime> ist ein JSF-Tag zur Darstellung des aktuellen Datums und der Uhrzeit.
Ein Beispiel für die Anwendung dieses Tag ist :
<t:outputText value="#{myBean.date}">
<f:convertDateTime pattern="dd.MM.yyyy HH:mm:ss"/>
</t:outputText>
Das Attribut pattern stellt die Formatierungsregel für das Datum dar.
Ohne die Angabe weiterer Attribute wird die Zeit in GMT angegeben, was für Deutschland natürlich falsch ist.
Für die Darstellung der Uhrzeit gibt es das Attribut timeZone. Eine Angabe von timeZone=”GMT+2″ ist aber nicht korrekt, da diese den Wechsel Winter-/Sommerzeit nicht berücksichtigt.
Das korrekte Beispiel mit Angabe der Uhrzeit ist :
<t:outputText value="#{myBean.date}">
<f:convertDateTime pattern="dd.MM.yyyy HH:mm:ss" timeZone="Europe/Berlin" />
</t:outputText>
Georges Margaritis JSF
RichFaces (vormals Ajax4sf) ist eine Komponentensammlung für JSF.
Fast alle Komponenten verfügen über eine Ajax-Funktionalität die es ermöglicht nur Teile der Seite nach einem Ajax-Request zu rendern. Dieses wird durch einen
Servlet-Filter erreicht, der alle Responses mit Hilfe eines Parsers (Tidy) parst. Dies ist notwendig um die Daten aus dem Response in den DOM-Baum einzubauen.
Das Parsen aller Responses erzeugt natürlich einen Overhead und damit auch Performanceverluste.
Optimieren kann man dies, in dem man den Parser so konfiguriert, das nur die Daten aus einem Ajax-Request geparst werden. Dafür setzt man das Attribut “forceparser” dieses Filters auf “false“.
Die Deklaration des Filters in der “web.xml” :
<filter>
<display-name>Ajax4jsf Filter</display-name>
<filter-name>ajax4jsf</filter-name>
<filter-class>org.ajax4jsf.Filter</filter-class>
<init-param>
<strong> <param-name>forceparser</param-name>
<param-value>false</param-value></strong>
</init-param>
</filter>
Georges Margaritis JSF
FacesTrace ist eine Open-Source-Library die in die Toolbox eines jeden JSF-Entwicklers gehört.
Sie stellt den Request-Response-Lifecycle einer JSF-Seite grafisch dar. Zusätzlich werden in einer Tabelle alle Variablen in allen Scopes, die FacesMessages und der UI-Komponentenbaum angezeigt.
Wir setzen FacesTrace auch in unserem JSF Einführung-Seminar ein, um unseren Seminarteilnehmern den JSF-Request-Lifecycle näher zu bringen.
Georges Margaritis JSF FacesTrace, JSF
Die neue Dojo Version 1.1 ist relased.
Neuerungen die uns aufgefallen sind :
- Ein neuer Layout-Container, “BorderContainer”.
- Verbesserung des “Tundra” CSS-Theme und ein
weiteres neues Theme, “Nihilo”.
- Support für Adobe AIR.
- Ein verbesserter und schneller API-Viewer.
- Mehr Demos und Tutorials.
Dojo in Aktion? Zum Beispiel AOL Webmail und Tripbase .
Georges Margaritis Ajax Ajax
WaveMaker hat eine neue und frei verfügbare AJAX-IDE veröffentlicht.
Das WaveMaker Visual Ajax Studio ermöglicht es per Drag n’ Drop einfach und schnell Ajax-Anwendungen zu erstellen.
Features u.a. :
- Drag & Drop
- Live Layout
- Dojo Widgets
- Anwendung als WAR-File
Wir finden diese IDE zur Entwicklung von UI-Prototypen für Kundenpräsentationen hervorragend.
Georges Margaritis Ajax
Nun, hier ist er, der erste Eintrag.
Was können Sie von diesem Blog erwarten? Regelmäßige Einträge zu aktuellen Themen aus den Themenbereichen Java, JSF, Ajax und Tomcat.
Links zu allen neuen Artikeln und Tutorials die wir auf trainFactory.de für unsere Kunden und weitere interessierte Softwareentwickler in Zukunft veröffentlichen werden.
Na dann, viel Spaß beim lesen.
Georges Margaritis Allgemein Ajax, Java, JSF, Tomcat