[ 
https://issues.apache.org/jira/browse/WICKET-6811?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17173799#comment-17173799
 ] 

Bernard commented on WICKET-6811:
---------------------------------

Thanks Sven, you have a few interesting points. I didn't know it wasn't 
supported.

In fact I could replace my hack with the use of onInitialize() and it works.

> StatelessForm Button onSubmit premature
> ---------------------------------------
>
>                 Key: WICKET-6811
>                 URL: https://issues.apache.org/jira/browse/WICKET-6811
>             Project: Wicket
>          Issue Type: Bug
>          Components: wicket-core
>    Affects Versions: 8.9.0
>         Environment: Windows, java version "1.8.0_201"
>            Reporter: Bernard
>            Assignee: Sven Meier
>            Priority: Major
>         Attachments: StatelessSubmitPremature.zip
>
>
> A StatelessForm contains a DataView repeater containing CheckBox form fields. 
> The StatelessForm also has a Button outside the repeater that submits the 
> StatelessForm with the objective to extract the CheckBox values. Then the 
> page should be displayed with the new Dataview content. The page is stateless.
> The attached test case shows that onSubmit() is called before the DataView's 
> populateItem() method. This means that onSubmit() cannot find the CheckBox 
> form components in the form's component hierarchy, leading to failure.
> In a successful variation of the test case, enabled by a boolean switch 
> STATELESS_DELAY_ACTION = false, the form's action is done by a Runnable 
> onSubmitRunner which is run later in the StatelessForm's onBeforeRender() 
> method. That Runnable calls the StatelessForm's onFormSubmitted(null) which 
> is NOT part of the public API.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to