suggestion:
load your data and keep it in a cache
use LDM to retrieve the data from the cache (e.g. ehcache) or reload
it if it expired.
Am 10.10.2009 um 19:46 schrieb Igor Vaynberg:
if you do not need to hold on to the data structure between requests
then there is no need to keep any references to it in the components
themselves. pass it into the constructor, create whatever components
you need to represent it in the ui and throw it away. you may have to
create wrappers around parts of it for some components, i suppose, but
you should be able to getaway without keeping a reference to it in
most cases.
a simplified example may be
class mypanel extends panel {
public mypanel (string id, nonserializable data) {
add(new label("name", data.getname()));
add(new label("author", data.getauthor()));
// instead of using a listview for repeaters use repeatingview
which lets you construct a repeater without a backing model
repeatingview rows=new repeatingview();
add(rows);
for (change:data.getchanges()) {
webmarkupcontainer row=new webmarkupcontainer(rows.newchildid
());
rows.add(row);
row.add(new label("author", change.getauthor());
row.add(new changesetpanel("changeset", change));
}
}
}
-igor
On Sat, Oct 10, 2009 at 9:35 AM, Ceki Gulcu <c...@qos.ch> wrote:
Igor Vaynberg wrote:
in other words, if you were building this app using jsps or servlets
how would you carry over this data structure between requests?
No, I actually would not carry the data between requests. When the
page is requested, I would run my test suite to compute the
results. Serving the test results from a previous test run is useless
and is likely to be misleading..
Following Eelco's suggestion, I've set all the fields in my panel
(DescriptionPanel) to transient. However, in one case the panel
creates a ListView which references non-serializable data items.
Thus I
started creating a parallel and serializable data class hierarchy for
presenting my results, which I am actually quite happy about.
However,
I also wish I knew a simpler solution if the same question arose in a
different context where duplicating the class hierarchy would be
inappropriate.
-igor
--
Ceki Gülcü
Logback: The reliable, generic, fast and flexible logging framework
for
Java.
http://logback.qos.ch
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org