I am migrating a project from 1.3.6 to 1.4.1.  I've run into a problem and
I'm not sure if this is a bug or not.

Most of the pages have a border and the border has a DropDownChoice in it
(as well as other components).  Technically it's in a panel in the border.

The Form objects are typically children of the border, like

add(border);
border.add(inputForm);

When the form is submitted, the DropDownChoice's value is being reset.  I've
traced through the code and it looks like the root of the cause is in
Form#internalUpdateFormComponentModels.

This is checking if there is a border and, if yes, then visiting all the
components of the border.

The internalUpdateFormComponentModels method in 1.3.6 didn't look for the
border and visit it's components.  It's not obvious to me why this needs to
be done now in 1.4.

So ultimately FormComponent#visitComponentsPostOrderHelper is being called
for all components whether they are inside the form or not.

It's returning visitor.component(component), which calls Form#component and
that calls ((IFormModelUpdateListener)component).updateModel();

I looked through the nabble logs and noticed this entry here:
http://www.nabble.com/Form-processing-issues-and-questions-%28particularly-r
elated-to-Border-and-ListMultipleChoice%29-td25251849.html#a25251849


Is there something I need to do here?  I'm not seeing any way of telling the
Form not to visit the Border's controls, and again, I'm not sure why it's
doing this.

I'd greatly appreciate any insight that can be offered.


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org

Reply via email to