Hi, it really was problem with AjaxSubmitButton, can you please test if it works now for you?
-Matej ChuckDeal wrote: > I don't mean to bump this, but was not quickstart not good enough to show the > problem? If necessary, I can take another stab at it to make it more > useful. > > Chuck > > > ChuckDeal wrote: >> Here is a test case the shows the problem. I have two identical pages. >> The only difference is that one page has the submit button contained by >> the form in the second page it is outside of the Form. >> >> http://www.nabble.com/file/5295/quickstart-ajaxbutton.zip >> quickstart-ajaxbutton.zip (this contains everything except for the lib >> folder and uses 1.3-incubating-SNAPSHOT) >> >> >> ChuckDeal wrote: >>> The AjaxSubmitButton specifically says that it does NOT have to be >>> attached to a form; from the javadoc >>> >>> * A button that submits the form via ajax. Since this button takes the >>> form as >>> * a constructor argument it does not need to be added to it unlike the >>> * [EMAIL PROTECTED] Button} component. >>> >>> However, in practice, this is not the case. I believe it is associated >>> with the change (1.2-SNAPSHOT -> 1.3-SNAPSHOT) to extend from Button. >>> >>> What goes wrong? The exception says something to the effect of "Could >>> not find Form parent for [the button component]" (see the full stacktrace >>> in my original message way down below); when debugging, it calls the >>> getForm() method of my button which instead of returning the Form that >>> was supplied to the Constructor, calls findParent() >>> >>> As for the test case, I'll see if I can put something together. >>> >>> Chuck >>> >>> >>> Johan Compagner wrote: >>>> 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 >>>> >>>> >>> > ------------------------------------------------------------------------- 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