Hi,

On Sun, Feb 10, 2019 at 10:29 PM mscoon <msc...@gmail.com> wrote:

> Hi Martin,
>
> The form reloads the entity from the database (it uses a kind of loadable
> detachable model) at each ajax request, so it does not remember the values
> for the fields that have been modified in previous requests if we use
> AjaxForm[Choice]ComponentUpdatingBehavior. This is why we use
> AjaxFormSubmitBehavior.
>
> We could alter the form somehow to use AjaxForm[Choice]ComponentUpdat
> ingBehavior, but still... aren't my points valid?
>

I do not know. There is no class AutoLabelMarker in Wicket distribution. I
have no idea what it is and how it works.

It would be better to explain us what you want to achieve and then we can
help you implement it.

>From the information we have at the moment I think you need to keep the
entity being edited as a property of the form/panel/page.
AjaxFormComponentUpdatingBehavior will validate and modify it. At the end
when the form submit button is pressed you should do the final checks and
store it in the database.


>
> On Fri, Feb 8, 2019 at 9:26 PM Martin Grigorov <mgrigo...@apache.org>
> wrote:
>
> > Hi,
> >
> > Why do you use AjaxFormSubmitBehavior ? It submits the whole form, i.e.
> all
> > its form components.
> > I think you want to use AjaxForm[Choice]ComponentUpdatingBehavior - it
> will
> > submit only the value of the modified field.
> >
> > On Fri, Feb 8, 2019 at 2:57 PM mscoon <msc...@gmail.com> wrote:
> >
> > > Hi all,
> > >
> > > We have an outer form and an inner form. The inner form contains some
> > form
> > > components which all have an AjaxFormSubmitBehavior in order to update
> > each
> > > - other when the user changes one of them.
> > >
> > > The actual submitting button is in the outer form.
> > >
> > > When the AjaxFormSubmitBehavior runs and some components are invalid,
> > > AutoLabelMarker is called and updates the label classes according to
> the
> > > component's validation state (valid/invalid) (and also required/enabled
> > > state). We do not want this to happen because the user is in the
> process
> > of
> > > filling in the form, and we think it's confusing to have the labels of
> > some
> > > components change color. This should only happen when the user has
> > clicked
> > > the submitting button.
> > >
> > > Whats-more the label classes are updated for all form components,
> > ignoring
> > > whether the components have been added to the AjaxRequestTarget in
> > > AjaxFormSubmitBehavior.onSubmit/onError.
> > >
> > > Can someone explain the reasoning behind AutoLabelMarker always
> updating
> > > all form component labels in every ajax request? Shouldn't labels be
> > > repainted after the ajax request only if their controls are repainted -
> > > i.e. added to the AjaxRequestTarget?
> > >
> > > Apparently we can remove the AutoLabelMarker from all form components.
> Is
> > > this what we should do? Isn't there a cleaner way?
> > >
> > > Thanks in advance,
> > > Marios
> > >
> >
>

Reply via email to