JSP dataTable header - Datenwerte verwenden?

geqoo

Bekanntes Mitglied
Hallo,

ich stehe hier momentan vor einem kleinen Problem.
Ich habe eine kleine Tabelle, die in etwa so ausschaut:

Kalenderjahr|Basis|Gewicht|
Wert1|Wert2|Wert3|Hinzufügen
Wert1|Wert2|Wert3|Entfernen

Ich habe also rechts einen Entfernen und einen hinzufügen Button. Diese habe ich mittels dem rendered Attribut so konfiguriert, dass der Entfernen Button immer in der letzten Zeile steht und der Hinzufügen Button immer in der vorletzten.
Das Problem dabe ist jetzt, wenn nur ein Datensatz da ist, gibt es keine vorletzte Zeile (für den Hinzufügen Button) und demnach wird dieser nicht angezeigt.
Stattdessen würde ich in diesem Fall den Hinzufügen Button gern im Header anzeigen lassen, allerdings möchte ich das nur machen, wenn es nur einen Datensatz gibt, wäre ja mit rendered="#{arraySize == 1}" kein Problem. Allerdings kommt es mir so vor, als könne man im <facet> Tag nicht auf die Daten der Tabelle zugreifen (wenn ich das da rein schreibe, zeigt er einfach nur "Submit Button" als Button Text an).

Meine Frage nun: Ist es irgendwie möglich, im Header das Attribut zu bekommen, wieviele Datensätze man hat?


Java:
<t:dataTable value="#{dummyDataBean.datas}" var="dataItem" rowCountVar="arraySize">
  <h:column>
    <f:facet name="header">
      <h:commandButton id="nButtonAddAlt" value="#{messages.buttonAdd}" styleClass="button nButtonAdd" action="#{dummyDataBean.addData()}" rendered="#{(arraySize == 1)}" />
    </f:facet>
    // ...
  </h:column>
</t:dataTable>
 
Zuletzt bearbeitet:

sence

Bekanntes Mitglied
du hast um das f:facet eine h:column, wenn du die entfernst sollte es gehen:

Java:
    <t:dataTable value="#{dummyDataBean.datas}" var="dataItem" rowCountVar="arraySize">      
        <f:facet name="header">
            <h:commandButton id="nButtonAddAlt" value="#{messages.buttonAdd}" styleClass="button nButtonAdd" action="#{dummyDataBean.addData()}" rendered="#{(arraySize == 1)}" />
        </f:facet>
// ...     
</t:dataTable>
 

geqoo

Bekanntes Mitglied
Ich will den Button aber nicht über der Headerzeile anzeigen (was mit deinem Beispiel so passieren würde), sondern eben in der Headerzeile, wo auch die Überschriften stehen.
Ich habe übrigens mittlerweile selbst herausgefunden:

Wenn man die die size-Methode einfach von der Bean aus aufruft, anstatt mit dem Parameter der dataTable, dann scheint es zu gehen.

Java:
rendered="#{(dummyDataBean.datas.size() == 1)}"
 
Zuletzt bearbeitet:

sence

Bekanntes Mitglied
>> rendered="#{dummyDataBean.datas.size() eq 1}"
ist richtig
bzw.
rendered="#{(dummyDataBean.datas.size() == 1)}"
ist das gleiche
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
F JSF h:dataTable fix Header und Scroll Body Web Tier 0
K jsf 1.2 tomahawk t:dataTable generic use Web Tier 3
W JSF DataTable - Filter Funktion funktioniert nicht Web Tier 3
W JSF einfache DataTable PrimeFaces Web Tier 1
D JSF DataTable konvertiert Felder nicht Web Tier 1
K deleteButton in dataTable geht nur halb Web Tier 8
T JSF Primefaces: DataTable Ajax Update - Weiterleitung von anderer Seite Web Tier 11
F Primefaces Datatable => Inplaces Web Tier 3
F Primefaces Datatable Web Tier 6
F.S.WhiTeY JSF h:dataTable / p:komponente Pagination mit Buchstaben. Web Tier 2
jottyfan JSF dataTable und graphicImage (mit JQuery) Web Tier 4
M JSF Composite components - dynamische dataTable? Web Tier 8
M JSF DataTable refreshen mit Ajax? Web Tier 5
M JSF Datatable, nichts geht ohne vorher zu refreshen... Web Tier 4
P JSF 1.2 commandButton in dataTable Web Tier 2
L JSF Überflüssige Methodenaufrufe - dataTable Web Tier 5
T DataTable Composite-Component und ManyToOne Web Tier 5
J JSF Datatable bestimmte Methode Web Tier 4
T JSF/Richfaces rich:dataTable with rich:datascroller Web Tier 1
A [PrimeFaces] dataTable mit paginator Probleme Web Tier 2
O Focus auf Textfeld, in letzter Reihe einer dataTable Web Tier 2
M Frage zur Konfiguration einer RichFaces DataTable Web Tier 4
M Datatable und der Zurückbutton Web Tier 4
K JSF Tomahawk dataScroller mit dataTable Web Tier 4
Y dataTable als dynamisches Grid Web Tier 4
E JSF Datatable erst nach Buttonklick anzeigen Web Tier 2
R JSF <rich:datatable> problem Web Tier 4
V JSF: dataTable Getter wird nie aufgerufen Web Tier 6
S JSF dataTable Position feststellen Web Tier 2
S JSF: colspan und rowspan in datatable Web Tier 4
E JSF Datatable leere Zellen anzeigen Web Tier 2
T richfaces datatable Web Tier 3
A JSF: Datatable Links mit Properties Web Tier 3
S richfaces Datatable horizontal ausgeben Web Tier 2
platofan23 Wie ordentlich in JSP den Footer/Header auslagern? Web Tier 2
J location response-header? Browser-Back-Button "deaktivieren" Web Tier 9

Ähnliche Java Themen

Neue Themen


Oben