a button should be in a form (one of its parents)
or a button should get the form through its constructor.
So what goes wrong exactly?
Can you have a small test case?
johan
On 12/18/06, ChuckDeal <[EMAIL PROTECTED]> wrote:
It gets there fine, its this line:
if (submit.getForm() == Form.this
that is the problem. submit (which is the button) does not belong to a
Form, it is supposed to contain a reference to a Form instead. SInce it
can't find a Form object for the button it throws an exception
throw new WicketRuntimeException("Could not find Form parent for " +
this);
Thus killing the execution.
To Igor:
It didn't make a difference when I renamed (wicket:id) the button from
"submit" to "submitButton".
Chuck
Johan Compagner wrote:
>
> It should work AjaxSubmitButton is a IFormSubmittingComponent component
so
> this code:
>
> IFormSubmittingComponent submit =
> (IFormSubmittingComponent)getPage().visitChildren(
> IFormSubmittingComponent.class, new IVisitor()
> {
> public Object component(final Component component)
> {
> // Get button
> final IFormSubmittingComponent submit =
> (IFormSubmittingComponent)component;
>
> // Check for button-name or button-name.xrequest
> string
> if (submit.getForm() == Form.this
> && (getRequest().getParameter(
> submit.getInputName()) != null || getRequest()
>
> .getParameter(submit.getInputName()
> + ".x") != null))
>
> should find the ajax button no matter if it is in the page or not
> (this is 1.3 code but as far as i know this isn't really changed)
>
> Frank are you reading with us? I believe you worked on this.
>
> johan
>
>
> On 12/13/06, ChuckDeal <[EMAIL PROTECTED]> wrote:
>>
>>
>> I have a Page that has a Form with some select boxes in it and, outside
>> the
>> Form, I have three buttons (submit[AjaxSubmitButton], reset[AjaxLink],
>> cancel[AjaxLink]).
>>
>> In Wicket 1.2.3 (Actually, I have been using the latest 1.2-SNAPSHOT
>> releases) The submit button works as advertised and submits the page.
>>
>> In 1.3-incubating-SNAPSHOT (latest as of 13DEC2006 7am EST), the page
>> fails
>> with the following exception:
>>
>> wicket.WicketRuntimeException: Could not find Form parent for
>> [MarkupContainer [Component id = submit, page =
>> com.csc.aims.issuetracker.wicket.TestSelectionPage, path =
>> 0:submit.TestSelectionPage$7, isVisible = true, isVersioned = false]]
>> at wicket.markup.html.form.FormComponent.getForm(
>> FormComponent.java:409)
>> at wicket.markup.html.form.Form$5.component(Form.java:633)
>> at wicket.MarkupContainer.visitChildren(MarkupContainer.java
:749)
>> at wicket.markup.html.form.Form.findSubmittingButton(Form.java
>> :624)
>> at wicket.markup.html.form.Form.onFormSubmitted(Form.java:333)
>> at
>> wicket.ajax.form.AjaxFormSubmitBehavior.onEvent(
>> AjaxFormSubmitBehavior.java:87)
>> at wicket.ajax.AjaxEventBehavior.respond(AjaxEventBehavior.java
>> :165)
>> at
>> wicket.ajax.AbstractDefaultAjaxBehavior.onRequest(
>> AbstractDefaultAjaxBehavior.java:225)
>> at
>>
>>
wicket.request.target.component.listener.BehaviorRequestTarget.processEvents
>> (BehaviorRequestTarget.java:98)
>> at
>> wicket.request.compound.DefaultEventProcessorStrategy.processEvents(
>> DefaultEventProcessorStrategy.java:64)
>> at
>>
>>
wicket.request.compound.AbstractCompoundRequestCycleProcessor.processEvents
>> (AbstractCompoundRequestCycleProcessor.java:56)
>> at
>> wicket.RequestCycle.doProcessEventsAndRespond(RequestCycle.java
>> :912)
>> at wicket.RequestCycle.processEventsAndRespond(
RequestCycle.java
>> :950)
>> at wicket.RequestCycle.step(RequestCycle.java:1026)
>> at wicket.RequestCycle.steps(RequestCycle.java:1100)
>> at wicket.RequestCycle.request(RequestCycle.java:454)
>> at wicket.protocol.http.WicketFilter.doGet(WicketFilter.java
:243)
>> at wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java
>> :122)
>>
>> After consulting the Migration Wiki Page
>> (http://cwiki.apache.org/WICKET/migrate-13.html) it shows that both
>> AjaxSubmitButton and AjaxSubmitLink have changed to extend Button.
>> (Actually, I checked AjaxSubmitLink and it does NOT extend
>> button...). But
>> according to the javadoc for AjaxSubmitButton, since you pass a form to
>> the
>> constructor, you don't need to add the component to a Form object. In
>> practice this was not true. Once I added the button to the form, it
>> worked
>> as advertised.
>>
>> I'm guessing the change was necessary as a result of the hierarchy
change
>> of
>> AjaxSubmitButton, but maybe the Form arg is no longer needed since you
>> must
>> add it to the Form object?
>>
>> Chuck
>> --
>> View this message in context:
>>
http://www.nabble.com/AjaxSubmitButton-and-not-adding-it-to-a-Form-tf2815470.html#a7857386
>> Sent from the Wicket - User mailing list archive at Nabble.com.
>>
>>
>>
-------------------------------------------------------------------------
>> Take Surveys. Earn Cash. Influence the Future of IT
>> Join SourceForge.net's Techsay panel and you'll get the chance to share
>> your
>> opinions on IT & business topics through brief surveys - and earn cash
>>
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
>> _______________________________________________
>> Wicket-user mailing list
>> Wicket-user@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/wicket-user
>>
>
>
-------------------------------------------------------------------------
> Take Surveys. Earn Cash. Influence the Future of IT
> Join SourceForge.net's Techsay panel and you'll get the chance to share
> your
> opinions on IT & business topics through brief surveys - and earn cash
>
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
> _______________________________________________
> Wicket-user mailing list
> Wicket-user@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wicket-user
>
>
--
View this message in context:
http://www.nabble.com/AjaxSubmitButton-and-not-adding-it-to-a-Form-tf2815470.html#a7930588
Sent from the Wicket - User mailing list archive at Nabble.com.
-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share
your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Wicket-user mailing list
Wicket-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wicket-user
-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Wicket-user mailing list
Wicket-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wicket-user