Hallo und Herzlich Willkommen in meinem Blog, hier werden Beiträge zu allen möglichen Themen, die ich finde erstellt. Ins besondere was ich so treibe, da ein Blog meiner Ansicht nach genau das ausmacht. Alles andere wäre eine Homepage die Details zu bestimmten Themen bietet. Ich biete hier Info's über mich, und meinen Interessen... Technologie und alles was sich dahinter verbirgt. Vorallem im Bereichen wie: J2EE, JEE, Java, WebStandards und allem was in der "Web-Welt" neu und angesagt ist. Auch ich bin am Twittern

Jsf und DataTable

Jetzt hat man schon so viel zu tun mit JSF und arbeitet sich immer tiefer in die Mysterien der Querverlinken Entities und Session basierten Beans. Bei einer simplen Tabelle mit SessionBean Ressources hängt man dann 40 Minuten und sucht einen Fehler, fast schon zum Mäusemelken. Man verzweifelt langsam an sich selbst bis man bemerkt das der Typ “binding” nichts mit der DataTable zu tun haben sollte. Also die Bean #{bean.viewList} im value deklariert und schon funktioniert alles.

Ich hab bestimmt 25 Minuten mit dem Debugger verbracht bis mir aufgefallen ist in einer anderen DataTable die ich vor 2/3 Tagen angelegt habe, dass ich kein value deklarierte. Blöder Fehler auf den ich hiermit gerne Hinweise, denn man kommt zu schnell in die Versuchung mit dem Vorschlag “binding” zu arbeiten.

<h:dataTable value=”#{bug.viewList}” var=”item”>
<h:column>
<f:facet name=”header”>
<h:outputText value=”Datum” />
</f:facet>
<h:outputText value=”#{item.beTimestamp}“>
<f:convertDateTime type=”both” dateStyle=”short” />
</h:outputText>
</h:column>

Hier noch ein kleines Beispiel. Die einzelnen Zeilen der Liste werden in der Variable item gespeichert und können dann abgerufen werden, jenachdem ob man ein Entity dahinter hat, kann man die getter des jeweiligen Feldes nehmen, wenn ein Vector dahinter steht ganze einfach mit dem jeweiligen Feld  #{item[2]}

Tags: , , , , , , , ,

Filed under:Allgemein

Leave a Reply