You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@wicket.apache.org by Joel Halbert <jo...@hotmail.com> on 2008/05/06 23:12:09 UTC

form fields become page parameters

Hi All,

I've noticed something odd when using stateless forms (on a stateless pages, although this fact is likely incidental to the problem).

The problem is as follows:

When the form is submitted for the first time the form fields are made available (by wicket) as page parameters (as well as populating the model). If the page is subsequently reloaded (say if if there is an error on the form which is displayed back to the user) the original form fields are rendered on to the forms action query string (because they were in the map of page parameters). These then override the form fields when the form is subsequently submitted for the second and subsequent times. To get around this I am explicitly removing form fields from the page parameters map before reloading the page (or by overriding Page.getPageParameters() and removing them there) however I sense that I am doing something wrong and was wondering if anyone could point out what I'm doing wrong.

Many Thanks,

Joel Halbert

Re: form fields become page parameters

Posted by Johan Compagner <jc...@gmail.com>.
hmm i think this is very hard to pass over..

If it is a statelessform and the page must first be created yes the page
gets the pageparameters of the request
And yes that is ofcourse then all the fields of the form..
And at that point it is a normal bookmarkable request.. after the page is
created the form is processed..

So i am wondering where and if we can clean up the page parameters at some
point..

johan

On Tue, May 6, 2008 at 11:12 PM, Joel Halbert <jo...@hotmail.com>
wrote:

> Hi All,
>
> I've noticed something odd when using stateless forms (on a stateless
> pages, although this fact is likely incidental to the problem).
>
> The problem is as follows:
>
> When the form is submitted for the first time the form fields are made
> available (by wicket) as page parameters (as well as populating the model).
> If the page is subsequently reloaded (say if if there is an error on the
> form which is displayed back to the user) the original form fields are
> rendered on to the forms action query string (because they were in the map
> of page parameters). These then override the form fields when the form is
> subsequently submitted for the second and subsequent times. To get around
> this I am explicitly removing form fields from the page parameters map
> before reloading the page (or by overriding Page.getPageParameters() and
> removing them there) however I sense that I am doing something wrong and was
> wondering if anyone could point out what I'm doing wrong.
>
> Many Thanks,
>
> Joel Halbert