Hello people, any more ideas? Again: It's only happening if I immediately submit the form after entering one letter in the AutoCompleteTextField (condition: overridden method getChoices must return at least one entry).
The exception is thrown in AbstractRequestCycleProcessor in line 416 (Wicket 1.3.5). The class tries to retrieve the component by the relative component path and the component is null. Therefore an exception is thrown. I have a second problem (maybe the same cause) with auto complete text fields. If I enter one letter, wait about 0,25 seconds and submit the form, then -the panel containing the auto complete text field will be removed from the view -the new panel is shown via ajax -the div (containing the choices) of the auto complete text field appears without the text field in the new panel. Would appreciate any answers. Thanks in advance, Leigh ________________________________ Von: Phil Grimm <phil.gr...@gmail.com> An: users@wicket.apache.org Gesendet: Montag, den 9. Februar 2009, 04:27:35 Uhr Betreff: Re: AutoCompleteTextField buggy? I tried it in my app (running 1.4-rc1) and was not able to reproduce this. Phil On Sat, Feb 7, 2009 at 1:05 PM, Arthur Leigh Allen < arthurleigh.al...@yahoo.de> wrote: > hi igor, it's 1..3.5 > > > > > ________________________________ > Von: Igor Vaynberg <igor.vaynb...@gmail.com> > An: users@wicket.apache.org > Gesendet: Samstag, den 7. Februar 2009, 00:44:28 Uhr > Betreff: Re: AutoCompleteTextField buggy? > > what wicket version are you using? > > -igor > > On Fri, Feb 6, 2009 at 3:32 AM, Arthur Leigh Allen > <arthurleigh.al...@yahoo.de> wrote: > > > > > > Hi there > > > > I read that some people here got the same exception like me, but I > couldn't find an answer. > > > > Do the following: > > -use an AutoCompleteTextField > > -override the method getChoices(String input) > > -do a time-consuming database call to retrieve the choices > > -return the choices > > > > everything works fine... but do the following steps VERY FAST > > -click at the AutoCompleteTextField to enter something > > -press "m" and immediately "enter" to submit the form > > > > this will submit the form BEFORE the getChoices method returns the > choices.. > > the form is submitted and then the AutoCompleteTextField is removed from > the page because the panel (including the text field) is removed and a > different panel is displayed via ajax. > > then the getChoices(...) method returns the choices and the following > exception occurs: > > > > org.apache..wicket.WicketRuntimeException: component > content:form:nameField:textField not found on page test.MyPage[id = 0], > listener interface = [RequestListenerInterface > name=IActivePageBehaviorListener, method=public abstract void > org.apache.wicket.behavior.IBehaviorListener.onRequest()] > > at test.TestApplication.access$0(TestApplication.java:145) > > at test.TestApplication$1.onRuntimeException(TestApplication.java:117) > > at > org.apache.wicket.request.AbstractRequestCycleProcessor.onRuntimeException(AbstractRequestCycleProcessor.java:217) > > at > org.apache.wicket.request.AbstractRequestCycleProcessor.respond(AbstractRequestCycleProcessor.java:119) > > at org.apache.wicket.RequestCycle.step(RequestCycle.java:1302) > > at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1353) > > at org.apache.wicket.RequestCycle.request(RequestCycle.java:493) > > at > org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:355) > > at > org.apache.wicket.protocol.http.WicketServlet..doGet(WicketServlet.java:124) > > at javax.servlet.http.HttpServlet.service(HttpServlet.java:690) > > at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) > > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) > > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > > at > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) > > at > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) > > at > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) > > at > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) > > at > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) > > at > org..apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286) > > at > org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) > > at > org.apache.coyote..http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583) > > at > org.apache.tomcat.util..net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) > > at java.lang.Thread.run(Thread.java:619) > > > > When the getChoices method returns "null" or when I press "m" and then > "enter" after ca. 3 seconds, everything works fine without an exception. > > > > I already saw that example: > http://www.wicket-library.com/wicket-examples/ajax/autocomplete.1 > > > > There the exception doesn't occur but I think it's maybe because > > -setResponsePage is used and not ajax or > > -the getChoices method returns the values in time > > > > Would appreciate any help > > > > Best regards, > > Leigh > > > > > > > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: users-unsubscr...@wicket..apache.org > For additional commands, e-mail: users-h...@wicket.apache.org > > > > -- Phil Grimm Mobile: (858) 335-3426 Skype: philgrimm336