What about using the @StatelessComponent (moving it from devutils into
wicket) as an indicator, that pages are intended to be stateless (_must_
be stateless)? Or introduce a new annotation @StatelessPage?

When a page that is intented to be stateless turns to be stateful, it's
always an issue (small or big one). Probably there are cases where pages
*should* be stateless and it doesn't really matter if they get stateful,
but there are also other cases, where pages *must* be stateless, e.g.
due to high load.

The @Stateless annotation would target the latter cases, where pages
*must* be stateless. And in this case, the pageIdCounter should also not
be modified.

What do you think?

Cheers,
Martin


On Sun, 2010-03-14 at 00:18 +0100, Martin Grotzke wrote:
> There are cases where pages are intended to be stateless (and might get
> annotated with @StatelessComponent). At least for these pages the page
> id should not be incremented, even if the session already has been
> bound.
> 
> Cheers,
> Martin
> 
> 
> On Sat, 2010-03-13 at 22:58 +0100, Matej Knopp wrote:
> > I'm not sure about all this.
> > 
> > If the session has not been bound the page id will always be 0. If the
> > session has been bound, I don't think we shouldn't increment page Id.
> > Stateless page can became stateful any time, not incrementing the id
> > can have sideeffects.
> > 
> > -Matej
> > 
> > On Sat, Mar 13, 2010 at 10:55 PM, Martin Grotzke
> > <martin.grot...@javakaffee.de> wrote:
> > > Hi,
> > >
> > > just submitted this as
> > > https://issues.apache.org/jira/browse/WICKET-2782
> > >
> > > I tried incrementing the pageId when the page's numericId is first
> > > accessed, but soon realized, that this does happen rather often (also
> > > e.g. to construct bookmarkable page links) ;-) Seems to be not as easy
> > > as I thought. Still, it would be really cool if this could be
> > > implemented!
> > >
> > > Cheers,
> > > Martin
> > >
> > >
> > > On Wed, 2010-03-10 at 08:49 -0800, Igor Vaynberg wrote:
> > >> i think we can do this in 1.5
> > >>
> > >> i would rather not mess with 1.4 because i think there is a lot of
> > >> code there that depends on the fact that the id is available right
> > >> away.
> > >>
> > >> please create a jira issue for this
> > >>
> > >> -igor
> > >>
> > >> On Mon, Mar 8, 2010 at 4:30 PM, Martin Grotzke
> > >> <martin.grot...@javakaffee.de> wrote:
> > >> > Hi,
> > >> >
> > >> > the Page.init(PageMap) invokes setNextAvailableId(), which invokes
> > >> > getSession().nextPageId() if isPageIdUniquePerSession is set.
> > >> >
> > >> > getSession().nextPageId() modifies the Session.pageIdCounter.
> > >> >
> > >> > When I have a session and afterwards access a stateless page, the
> > >> > Session.pageIdCounter is the only data that is changed in the session
> > >> > AFAICS, everything else is the same as in the request before.
> > >> >
> > >> > Is it possible _not_ to modify the Session.pageIdCounter if the page is
> > >> > really stateless (or just don't invoke Page.setNextAvailableId())?
> > >> >
> > >> > I'm interested in this, as I'm just implementing a feature for the
> > >> > memcached-session-manager ([1], memcached based session replication),
> > >> > which checks if session data has changed and replicates sessions only 
> > >> > if
> > >> > this is provided. If session data did not change, the replication is
> > >> > omitted. Therefore, if the Session.pageIdCounter would be left 
> > >> > unchanged
> > >> > for stateless pages, this would allow to make use of this feature in
> > >> > wicket apps.
> > >> >
> > >> > Thanx && cheers,
> > >> > Martin
> > >> >
> > >> >
> > >> > [1] http://code.google.com/p/memcached-session-manager/
> > >> >
> > >> >
> > >> >
> > >>
> > >> ---------------------------------------------------------------------
> > >> 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
> > 
> 

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to