ok but does this mean you can't have a form submitted when an event occurs on a component outside the form? That's what I was trying to achieve (and was supported in T4.1.1).
Anyway, this was a hacky workaround for some problems I had with 4.1.1(event in For loops). Replaced it with a more "standard" way to achieve the same, which is async DirectLinks. Works like a charm now. 2007/6/8, Jesse Kuhnert <[EMAIL PROTECTED]>:
Don't specify submitForm =. It's not needed anymore. On 6/7/07, Christian Dutaret <[EMAIL PROTECTED]> wrote: > > Hi all, > > My app has a page with a form having only hidden fields. I use this form > to > rewind some values on async events. This was working fine with T4.1.1. > After > I upgraded to 4.1.2, and after some (unrelated) tweaks, it was also > working > fine on my dev windows laptop. > After I deployed it on a "semi-production" remote linux box, I began > observing some very weird behaviors: > - Works fine under FF2 and Opera9 > - breaks under IE7 and FF1.5 > > I then tried to use an earlier 4.1.2 snapshot (108), redeployed, and it > was > working on IE7 and FF1.5, but not on FF2 and Opera9. Asked a colleague to > try from his computer, and breaks with his FF2 (same version than mine). > Tried an even earlier snapshot (103), and then it was broken on browsers > which were working before, and working on those broken before (all browser > caches and cookies cleared). > > I then tried to deploy locally again, but with caching enabled. Could > reproduce the problem with IE7, works with FF2. So it seems the problem > only > shows with page caching enabled. > > Here is my EventListener: > > @EventListener(elements = "dialop", events = "ajaxEvent", submitForm = > "hidform", autoSubmit = false) > public void selectOp(IRequestCycle cycle, BrowserEvent event) { > // do some stuff here > cycle.getResponseBuilder().updateComponent("dialop"); > } > > My template: > <form jwcid="[EMAIL PROTECTED]" stateful="false"><span jwcid="[EMAIL PROTECTED]" > value="ognl:seed" /><span jwcid="[EMAIL PROTECTED]" > value="ognl:currentPage" /> <span jwcid="[EMAIL PROTECTED]" > value="ognl:queryHistory" /> <span jwcid="[EMAIL PROTECTED]" > value="ognl:selectedInsurerId" /><span jwcid="[EMAIL PROTECTED]" > value="ognl:selectedAnnounceId" /></form> > > > And the stack trace I get: > > org.apache.hivemind.ApplicationRuntimeException: No component found in > tree > for EventListener binding with a matching component id of > search/Result/hidform. [context:/search/Result.html] > at > org.apache.tapestry.pageload.EventConnectionVisitor.wireElementFormEvents( > EventConnectionVisitor.java:113) > at org.apache.tapestry.pageload.EventConnectionVisitor.visitComponent( > EventConnectionVisitor.java:86) > at > > $IComponentVisitor_113059e6e51.visitComponent($IComponentVisitor_113059e6e51.java) > at > > $IComponentVisitor_113059e6e52.visitComponent($IComponentVisitor_113059e6e52.java) > at org.apache.tapestry.pageload.ComponentTreeWalker.walkComponentTree( > ComponentTreeWalker.java:45) > at org.apache.tapestry.pageload.PageLoader.loadPage(PageLoader.java > :657) > at $IPageLoader_113059e6e3f.loadPage($IPageLoader_113059e6e3f.java) > at $IPageLoader_113059e6e40.loadPage($IPageLoader_113059e6e40.java) > at org.apache.tapestry.pageload.PageSource.getPage(PageSource.java > :119) > at $IPageSource_113059e6d9e.getPage($IPageSource_113059e6d9e.java) > at org.apache.tapestry.engine.RequestCycle.loadPage( RequestCycle.java > :239) > at org.apache.tapestry.engine.RequestCycle.getPage(RequestCycle.java > :226) > at org.apache.tapestry.engine.ExternalService.service( > ExternalService.java:140) > at > $IEngineService_113059e6e35.service($IEngineService_113059e6e35.java) > at org.apache.tapestry.services.impl.EngineServiceOuterProxy.service ( > EngineServiceOuterProxy.java:72) > at org.apache.tapestry.engine.AbstractEngine.service( > AbstractEngine.java > :237) > at org.apache.tapestry.services.impl.InvokeEngineTerminator.service( > InvokeEngineTerminator.java:54) > at > > $WebRequestServicer_113059e6e04.service($WebRequestServicer_113059e6e04.java) > at > > $WebRequestServicer_113059e6e00.service($WebRequestServicer_113059e6e00.java) > at > org.apache.tapestry.services.impl.WebRequestServicerPipelineBridge.service > ( > WebRequestServicerPipelineBridge.java:61) > at > > $ServletRequestServicer_113059e6de6.service($ServletRequestServicer_113059e6de6.java) > at org.apache.tapestry.request.DecodedRequestInjector.service( > DecodedRequestInjector.java:55) > at > > $ServletRequestServicerFilter_113059e6de2.service($ServletRequestServicerFilter_113059e6de2.java) > at > > $ServletRequestServicer_113059e6de8.service($ServletRequestServicer_113059e6de8.java) > at org.apache.tapestry.multipart.MultipartDecoderFilter.service( > MultipartDecoderFilter.java:52) > at > > $ServletRequestServicerFilter_113059e6de0.service($ServletRequestServicerFilter_113059e6de0.java) > at > > $ServletRequestServicer_113059e6de8.service($ServletRequestServicer_113059e6de8.java) > at org.apache.tapestry.services.impl.SetupRequestEncoding.service( > SetupRequestEncoding.java:53) > at > > $ServletRequestServicerFilter_113059e6de4.service($ServletRequestServicerFilter_113059e6de4.java) > at > > $ServletRequestServicer_113059e6de8.service($ServletRequestServicer_113059e6de8.java) > at > > $ServletRequestServicer_113059e6dda.service($ServletRequestServicer_113059e6dda.java) > at org.apache.tapestry.ApplicationServlet.doService( > ApplicationServlet.java:126) > at org.apache.tapestry.ApplicationServlet.doGet( > ApplicationServlet.java > :103) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:689) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) > at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter( > ApplicationFilterChain.java:252) > at org.apache.catalina.core.ApplicationFilterChain.doFilter( > ApplicationFilterChain.java:173) > at hyperassur.web.util.DisableUrlSessionFilter.doFilter( > DisableUrlSessionFilter.java:60) > at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter( > ApplicationFilterChain.java:202) > at org.apache.catalina.core.ApplicationFilterChain.doFilter( > ApplicationFilterChain.java:173) > at org.apache.catalina.core.StandardWrapperValve.invoke( > StandardWrapperValve.java:213) > at org.apache.catalina.core.StandardContextValve.invoke( > StandardContextValve.java:178) > at org.apache.catalina.core.StandardHostValve.invoke( > StandardHostValve.java:126) > at org.apache.catalina.valves.ErrorReportValve.invoke( > ErrorReportValve.java:105) > at org.apache.catalina.core.StandardEngineValve.invoke( > StandardEngineValve.java:107) > at org.apache.catalina.connector.CoyoteAdapter.service( > CoyoteAdapter.java:148) > at org.apache.coyote.http11.Http11Processor.process( > Http11Processor.java > :869) > at > > org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection > (Http11BaseProtocol.java:664) > at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket( > PoolTcpEndpoint.java:527) > at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt( > LeaderFollowerWorkerThread.java:80) > at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run( > ThreadPool.java:684) > at java.lang.Thread.run(Thread.java:595) > > If someone could help me out before I tear all my hair out... > > Thx > Ch. > -- Jesse Kuhnert Tapestry/Dojo team member/developer Open source based consulting work centered around dojo/tapestry/tacos/hivemind. http://blog.opencomponentry.com