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

Reply via email to