Hi Fabio,

I agree that the removal of the default message is not really needed.
It has been done with https://issues.apache.org/jira/browse/WICKET-5735.

I've reverted this with https://issues.apache.org/jira/browse/WICKET-6181


Martin Grigorov
Wicket Training and Consulting
https://twitter.com/mtgrigorov

On Mon, Jun 13, 2016 at 1:43 PM, Fabio Fioretti <windom.macroso...@gmail.com
> wrote:

> Hi all,
> Does anybody have any feedback on this?
>
> Many thanks,
> Fabio
>
> On Tue, May 31, 2016 at 12:46 PM, Fabio Fioretti <
> windom.macroso...@gmail.com> wrote:
>
> > Hi Martin,
> >
> > You are right, the form id was already there in 6.17.0, but the default
> > message was removed! That is what is breaking my app - I did not realize
> it
> > because my custom message was the same as the default.
> >
> > Why was it removed?
> >
> > In 6.17.0:
> > final String defaultValue = "Upload must be less than " + getMaxSize();
> > String msg = getString(getId() + '.' + UPLOAD_TOO_LARGE_RESOURCE_KEY,
> > Model.ofMap(model), defaultValue)
> >
> > While in 6.23.0:
> > String msg = getString(getId() + '.' + UPLOAD_TOO_LARGE_RESOURCE_KEY,
> > Model.ofMap(model));
> >
> > Interestingly, the comment still says "Resource key should be
> > <form-id>.uploadTooLarge to override default message".
> >
> > IMHO, forcing to have the root (!) form id in the property key makes it
> > impossible to create a reusable component for managing uploads, like an
> > UploadPanel with its own form and FileUploadField . In fact, as soon as
> you
> > place it in a hierarchy that includes an outer form, it will break your
> > app. The default value at least provided a safe fallback.
> >
> > What do you think?
> >
> > Many thanks,
> > Fabio
> >
> >
> > On Mon, May 30, 2016 at 4:31 PM, Martin Grigorov <mgrigo...@apache.org>
> > wrote:
> >
> >> Hi,
> >>
> >> On Fri, May 27, 2016 at 12:42 PM, Fabio Fioretti <
> >> windom.macroso...@gmail.com> wrote:
> >>
> >> > Hi Martin,
> >> >
> >> > Is this the ticket you refer to?
> >> > https://issues.apache.org/jira/browse/WICKET-5190
> >>
> >>
> >> Yes, this is the one!
> >>
> >>
> >> >
> >> >
> >> > It has an explanation on why onFileUploadException() is called on the
> >> root
> >> > form that seems reasonable.
> >> >
> >> > In any case, if I don't specify the form id in the property key
> (leaving
> >> > just "uploadTooLarge") I get the following MissingResourceException
> when
> >> > FileUploadBase.SizeLimitExceededException is thrown:
> >> >
> >>
> >> According to Git history the id was there even in 6.17:
> >>
> >>
> https://github.com/apache/wicket/blob/wicket-6.17.0/wicket-core/src/main/java/org/apache/wicket/markup/html/form/Form.java#L1423
> >>
> >> The id is not in Wicket 7.x though!
> >> It has been removed with
> >> https://issues.apache.org/jira/browse/WICKET-5206
> >> 3 years ago
> >>
> >>
> >> >
> >> > *java.util.MissingResourceException*: Unable to find property:
> >> > 'form1.uploadTooLarge' for component: border:border_body:form1
> >> > [class=org.apache.wicket.markup.html.form.Form].
> >> > Locale: null, style: null
> >> >
> >> > As you can see, I do have a border complicating things (not sure if it
> >> > might play a role here) but it worked just fine in Wicket 6.17.0. In
> >> fact I
> >> > had to add the form id ("form0.uploadTooLarge") to make it work in
> >> 6.23.0,
> >> > but then I ran into this other issue that, when form0 is nested in
> >> > form1, Wicket looks up for "form1.uploadTooLarge" instead.
> >> >
> >> > I also noticed that there is a new fileMaxSize property in Form that
> >> wasn't
> >> > there in 6.17.0. Should I use that one instead of maxSize? It has no
> >> setter
> >> > though...
> >> >
> >>
> >> This is related to https://issues.apache.org/jira/browse/WICKET-5735
> >>
> >>
> >> >
> >> > Any clarification would be much appreciated.
> >> >
> >> > Many thanks,
> >> > Fabio
> >> >
> >> > On Thu, May 26, 2016 at 7:18 PM, Martin Grigorov <
> mgrigo...@apache.org>
> >> > wrote:
> >> >
> >> > > Hi,
> >> > >
> >> > > I believe there is/was another ticket describing exactly your
> problem
> >> > but I
> >> > > cannot find it now.
> >> > >
> >> > > The form id in the property key is not really needed.
> >> > > You could use it to give Wicket a more specific message for
> particular
> >> > > component.
> >> > > You can remove it if this message should/could be used for any other
> >> Form
> >> > > in you application/package/page/panel (depending in which
> .properties
> >> > file
> >> > > you have it).
> >> > >
> >> > > Martin Grigorov
> >> > > Wicket Training and Consulting
> >> > > https://twitter.com/mtgrigorov
> >> > >
> >> > > On Thu, May 26, 2016 at 6:46 PM, Fabio Fioretti <
> >> > > windom.macroso...@gmail.com
> >> > > > wrote:
> >> > >
> >> > > > Hello everybody,
> >> > > >
> >> > > > I recently migrated an application from Wicket 6.17.0 to 6.23.0
> and
> >> I'm
> >> > > > experiencing the following problem.
> >> > > >
> >> > > > I have 2 nested forms. The inner one, form0, contains a
> >> FileUploadField
> >> > > > with an AjaxFormSubmitBehavior(form0, "change") attached to it,
> >> while
> >> > the
> >> > > > external one, form1, wraps form0.
> >> > > >
> >> > > > form1
> >> > > >     |__
> >> > > >          form0
> >> > > >                   |__
> >> > > >                        FileUploadField
> >> > > >
> >> > > > When the user selects a file and a file upload exception is thrown
> >> > (e.g.
> >> > > > FileSizeLimitExceededException), I would expect form0's
> >> > > > onFileUploadException() method to be invoked. However, the one of
> >> form1
> >> > > is
> >> > > > invoked instead...
> >> > > >
> >> > > > As a result, Wicket starts looking for a property named
> >> > > > "form1.uploadTooLarge" instead of "form0.uploadTooLarge", thus
> >> breaking
> >> > > my
> >> > > > app, which only defines the latter.
> >> > > >
> >> > > > Is this an intended behavior?
> >> > > >
> >> > > > Was it introduced by
> >> https://issues.apache.org/jira/browse/WICKET-5753
> >> > ?
> >> > > >
> >> > > > And, by the way, what is the rationale of having the form id in
> the
> >> > > > property key?
> >> > > >
> >> > > > Many thanks in advance,
> >> > > > Fabio
> >> > > >
> >> > >
> >> >
> >>
> >
> >
>

Reply via email to