richfaches:datascroller mit request-scope

Status
Nicht offen für weitere Antworten.
F

frank_b

Gast
Hi, ich möchte den richfaches:datascroller benutzen um in einer Datentabelle blättern zu können. Das ganze funktioniert auch:

<rich:datascroller for="userData" maxPages="5"/>

<rich:dataTable id="userData" value="#{myBean.users}" var="row" rows="10">
<rich:column>
<h:eek:utputText value="#{row.name}"/>
</rich:column>
</rich:dataTable>

Mein Problem ist jetzt folgendes: Das Blättern funktioniert nur wenn ich die den manged-bean-scope der Bean "myBean" auf "session" stelle. Wenn ich den scope auf "request" stelle dann ist es nicht mehr möglich zu blättern.

Hat jemand Erfahrung mit dem richfaces:datascroller? Gibt es eine Möglichkeit "request" scope für den datascroller zu verwenden?

Für Lösungsvorschläge wäre ich recht dankbar!
 
M

maki

Gast
Dir ist die Bedeutung des request scopes bekannt?

Wenn ja, wirst du ja einsehen das es keinen Sinn ergibt einen Datascroller bzw. irgendetwas das mehr als einen Aufruf braucht mit einer Bean zu verwenden die nur den reqeest scope hat.

Klar, die Standard scopes sind ziemlich grob, es gibt Frameworks die mehr haben, zB. shale und seam, da gibt es einen dialog bzw. conversation scope.
 
F

frank_b

Gast
Die Bedeutung eines request scopes wäre mir eigentlich bekannt.
Aber es muss doch irgendeine Möglichkeit in JSF geben sich Daten in einer Tabelle in mehreren Pages geteilt anzeigen zu lassen ohne dass sich die Daten für die ganze Session im Arbeitsspeicher befinden.

Bei mehreren 1000 Datensätzen und Benutzern würde der Speicherbedarf extrem hoch sein.

Gibts irgendeine Möglichkeit das Problem zu lösen?
 
M

maki

Gast
Die Bedeutung eines request scopes wäre mir eigentlich bekannt.
Dann solltest du dich ja eigentlich nicht wundern ;)

Aber es muss doch irgendeine Möglichkeit in JSF geben sich Daten in einer Tabelle in mehreren Pages geteilt anzeigen zu lassen ohne dass sich die Daten für die ganze Session im Arbeitsspeicher befinden.

Bei mehreren 1000 Datensätzen und Benutzern würde der Speicherbedarf extrem hoch sein.

Gibts irgendeine Möglichkeit das Problem zu lösen?
Hab ich doch gesagt, es gibt frameworks die mehr scopes anbieten, kannst dir natürlich auch selbst einen schreiben.

Du musst ja nicht gleich alle Daten in die Sesion holen, die angezeigten würden ja reichen, die anderen kannst du bei Bedarf holen.
Der ValueListHandler war mal ein Muster von Sun um dieses Problem zu lösen.
 
F

frank_b

Gast
Danke für den Tip. Ich werde mal versuchen das ich das mit einem ValueListHandler hinbekomme.

In den Zusammenhang hat sich mir noch eine Frage gestellt: Wie kann ich erreichen das beim Aufruf einer bestimmten JSF Seite mit scope "session" immer eine bestimmte Methode aufgerufen wird (damit ich zum Beispiel eine DataTable mit Daten laden kann). Der Konstruktur wird ja nur beim ersten Mal aufgerufen also kann ich diesen nicht dafür verwenden.

Funktioniert das mittels eines Filters oder welche Möglichkeiten gibt es da?
 
M

maki

Gast
Dafür würde shale von haus aus Unterstützung bieten, oder du schreibst dir einen PhaseListener, der das macht.
 
G

Guest

Gast
Das funtioniert auch im Request scope.
Setzte einfach in deine jsp folgendes ein:

<a4j:keepAlive beanName="myBean"></a4j:keepAlive>

Dann wird der request gehalten.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
J RichFaches: Seitenansicht verkleinert sich? Web Tier 2
V JSF dataScroller alternative Web Tier 3
T JSF/Richfaces rich:dataTable with rich:datascroller Web Tier 1
K JSF Tomahawk dataScroller mit dataTable Web Tier 4
J DataScroller: rowCount für Folgeseiten übernehmen Web Tier 2
E Java Servlet doPost request, Mehrere Parameter mit demselben Namen aus Tabellenzeilen Web Tier 2
M XML http request zeigt die eigene Website als response Web Tier 2
jann Servlet Bei jedem Request wird eine neue Session erstellt. Web Tier 6
M request.getUserPrincipal() Typecasting Web Tier 1
BuckRogers JPA Datenbankabfrage bei jedem Request?! Web Tier 6
S JSF CommandButton soll keine Request starten! Web Tier 2
X Managed Bean Scope zwischen Request und Session gesucht Web Tier 6
S JSF Request länger haltbar machen *grins* oder injection.. Web Tier 6
lukas24680 Servlet pro Request Web Tier 2
7 kein Absatz mittels request.getParameter()?? Web Tier 8
borobudur Servlet Business-Logik wird bei jedem Request neu erstellt Web Tier 13
S Ajax Request verhindert forward? Web Tier 8
ruutaiokwu request.getParameter() Web Tier 3
J Request weiterleiten Web Tier 6
K Struts request Zugriff Web Tier 4
I Beim zurück-Link wird immer ein Request ausgeführt Web Tier 5
F Problem mit der Methode request.getRemotePort() Web Tier 2
F Object Request Web Tier 6
L Umlaute von Formular mit request holen Web Tier 16
P request.getParameter("name") von Formular auf JSP-Seite leer Web Tier 5
P Rausfinden, wo request herkam Web Tier 4
R Request Parameter kopieren und setzen Web Tier 3
S Per HTTP Request auf Ressourcen innerhalb eines JARs zugreif Web Tier 4
L JSF Request Scope und createValueBinding() Web Tier 1
D request.contextPath in Java-Klasse ausführen Web Tier 5
E Problem mit request.getParameter Web Tier 5
F JSF: Beans in Session oder Request? Web Tier 4

Ähnliche Java Themen

Neue Themen


Oben