Frage

Ich bin mit Richfaces 3.3.1 mit JSF RE 1.2 und facelets. Ich habe ein seltsames Problem mit der HTML-Generierung eines reichen: Datatable mit einem reichen. Datascroller

<h:form id="br">
...
 <rich:datascroller id="scrt" page="#{searchBookings.page}" stepControls="hide" renderIfSinglePage="false" for="bt" align="left" reRender="ttips,bt"/>
 <rich:dataTable id="bt" rows="20" rendered="#{!empty searchBookings.bookings}" value="#{searchBookings.bookings}" var="row" binding="#{searchBookings.table}">
....

Das erste Mal die Seite geladen wird, alles gut funktioniert. Wenn ich die gleiche Seite ein zweites Mal besuchen, wechselnde Seiten über die datascroller nicht aktualisiert die Datentabelle mehr. Schlagen Sie die Refresh-Button löst das Problem.

Hinzufügen a4j: log diese Warnung offenbart:

 warn[14:50:07,259]: Node for replace by response with id br:bt not found in document

der Tat, wenn die HTML-Inspektion, die "richtige" Seite sieht wie folgt aus:

  <table class="dr-table rich-table " id="br:bt" ....

Während die "schlechte" Seite sieht wie folgt aus:

  <table class="dr-table rich-table " id="br:bt:0" ....

Beachten Sie die „0“ am Ende der ID sollte es nicht da sein. Was könnte die Ursache sein?

Vielen Dank für jede Eingabe.

War es hilfreich?

Lösung

ok habe es gefunden. irgendwo in der Backing Bean ich habe

  

table.setRowIndex (0);

, was ich tun gemeint war

  

table.setFirst (0);

Der ehemalige macht offenbar der Generator annehmen, dass er der Erzeugungs Reihen, so dass er eine Reihe ID zurückgibt, das Anhängen „: 0“. Keine Ahnung, wie dies erst das zweite Mal wirkt die Seite erzeugt though. Hoffe, dass dies jemand anderes einmal nützlich ist.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top