updating to tapestry5-jquery to 3.4.2 version seems to resolve this issue :)
On Fri, Jun 17, 2016 at 11:57 AM, Qbyte Consulting < qbyteconsult...@gmail.com> wrote: > Thanks Cezary, > > What I found is that making COMBINE_SCRIPTS=false resolves the issue. > > configuration.add(JQuerySymbolConstants.SUPPRESS_PROTOTYPE, > "false"); > configuration.add(JQuerySymbolConstants.JQUERY_ALIAS, "$J"); > configuration.add(SymbolConstants.COMBINE_SCRIPTS, "false"); > > This will be an acceptable work-around for now, but not ideal. > > > > On Thu, Jun 16, 2016 at 6:54 PM, Cezary Biernacki <cezary...@gmail.com> > wrote: > >> Hi John, >> it is hard to answer your question without any source code or details >> about >> your application. My guess your application is using tapestry-jquery and >> something is incorrectly initialised in production-mode. I would check if >> you do not encounter problems with your browser caching some old version >> of >> JavaScript libraries (IIRC, in Tapestry 5.3 you need to change application >> version every time asset changes - I recommend ensuring that your build >> process does that for you). Probably because of failure on JavaScript >> side, >> your link clicks with JS, are not actually rewritten to be AJAX links, but >> normal links, and your event handlers do not check if requests are AJAX >> (us >> Request.isXHR method to check that), and blindly try to prepare AJAX >> rendering, which causes this exception. >> >> My recommendations: >> >> - See if your links are actually sent as AJAX requests from the >> browser. >> >> - Find and fix the cause of problems reported for JavaScript in the >> browser. First ensure that your browser does not cached some incorrect >> version of assets. If it does, ensure that you change application >> version >> setting when assets changes. Preferably make your build process to set >> application version in Tapestry in some automatic way. >> >> - In Java, event handlers should check if request is AJAX or not, and >> use appropriate processing paths for preparing output. Even if you fix >> your >> JavaScript problems, your application will be more user friendly and >> robust >> by not assuming that these events are always sent via AJAX (e.g. user >> can >> have JavaScript disabled, or middle-click on the link, etc.). >> >> >> As I said before, I can only guess what is wrong. If my recommendation >> would not help, try providing more details and narrow down the problem. >> >> Best regards, >> Cezary >> >> >> >> On Thu, Jun 16, 2016 at 5:14 PM, Qbyte Consulting < >> qbyteconsult...@gmail.com >> > wrote: >> >> > Hi, >> > >> > My T5.3.6 application works fine with production mode=false. However >> when >> > production-mode = true then some linkclicks with JS return: >> > >> > An unexpected application exception has occurred. >> > >> > Page must be specified before initializing for partial page render. >> > >> > This is on the browser console: >> > >> > core.js:6947 Uncaught TypeError: element.attachEvent is not a function >> > SuperfishStack.js:383 Uncaught TypeError: Cannot read property >> > 'extendInitializers' of undefined >> > dialog.js:3 Uncaught TypeError: Cannot read property >> 'extendInitializers' >> > of undefined >> > bind.js:3 Uncaught TypeError: Cannot read property 'extendInitializers' >> of >> > undefined >> > jGrowl_init.js:2 Uncaught TypeError: Cannot read property >> > 'extendInitializers' of undefined >> > manageusers:17 Uncaught TypeError: Cannot set property 'JQUERY' of >> > undefined >> > core.js:7028 Uncaught TypeError: element.dispatchEvent is not a function >> > >> > Why is that happening? >> > >> > regards, >> > John >> > >> > >> > >> > [ERROR] ioc.Registry Page must be specified before initializing for >> partial >> > page >> > render. >> > [ERROR] ioc.Registry Operations trace: >> > [ERROR] ioc.Registry [ 1] Triggering event 'alphabetfilter' on >> > ManageUsers:users >> > component >> > [ERROR] TapestryModule.RequestExceptionHandler Processing of request >> failed >> > with >> > uncaught exception: Page must be specified before initializing for >> partial >> > page >> > render. >> > org.apache.tapestry5.ioc.internal.OperationException: Page must be >> > specified bef >> > ore initializing for partial page render. [at >> > classpath:xxxxxx/audit/manager/pag >> > es/ManageUsers.tml, line 38] >> > at >> > org.apache.tapestry5.ioc.internal.OperationTrackerImpl.logAndRethrow( >> > OperationTrackerImpl.java:121) >> > at >> > org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(Operati >> > onTrackerImpl.java:88) >> > at >> > org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(Pe >> > rThreadOperationTracker.java:87) >> > at >> > org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.ja >> > va:1124) >> > at >> > org.apache.tapestry5.internal.structure.ComponentPageElementResources >> > Impl.invoke(ComponentPageElementResourcesImpl.java:146) >> > at >> > org.apache.tapestry5.internal.structure.ComponentPageElementImpl.trig >> > gerContextEvent(ComponentPageElementImpl.java:1053) >> > at >> > org.apache.tapestry5.internal.services.ComponentEventRequestHandlerIm >> > pl.handle(ComponentEventRequestHandlerImpl.java:81) >> > at >> > org.apache.tapestry5.internal.services.ImmediateActionRenderResponseF >> > ilter.handle(ImmediateActionRenderResponseFilter.java:42) >> > at $ComponentEventRequestHandler_ae9391b333f0.handle(Unknown >> > Source) >> > at >> > org.apache.tapestry5.internal.services.AjaxFilter.handle(AjaxFilter.j >> > ava:42) >> > at $ComponentEventRequestHandler_ae9391b333f0.handle(Unknown >> > Source) >> > at >> > org.apache.tapestry5.upload.internal.services.UploadExceptionFilter.h >> > andle(UploadExceptionFilter.java:75) >> > at $ComponentEventRequestHandler_ae9391b333f0.handle(Unknown >> > Source) >> > at >> > org.apache.tapestry5.services.TapestryModule$41.handle(TapestryModule >> > .java:2476) >> > at $ComponentEventRequestHandler_ae9391b333f0.handle(Unknown >> > Source) >> > at $ComponentEventRequestHandler_ae9391b3339f.handle(Unknown >> > Source) >> > at >> > org.apache.tapestry5.internal.services.ComponentRequestHandlerTermina >> > tor.handleComponentEvent(ComponentRequestHandlerTerminator.java:43) >> > at >> > org.apache.tapestry5.services.InitializeActivePageName.handleComponen >> > tEvent(InitializeActivePageName.java:39) >> > at >> > $ComponentRequestHandler_ae9391b333a1.handleComponentEvent(Unknown So >> > urce) >> > at >> > xxxxxx.audit.manager.services.PageProtectionFilter.handleComponentEve >> > nt(PageProtectionFilter.java:113) >> > at >> > $ComponentRequestFilter_ae9391b3339e.handleComponentEvent(Unknown Sou >> > rce) >> > at >> > $ComponentRequestHandler_ae9391b333a1.handleComponentEvent(Unknown So >> > urce) >> > at >> > $ComponentRequestHandler_ae9391b33298.handleComponentEvent(Unknown So >> > urce) >> > at >> > org.apache.tapestry5.internal.services.ComponentEventDispatcher.dispa >> > tch(ComponentEventDispatcher.java:46) >> > at $Dispatcher_ae9391b3329a.dispatch(Unknown Source) >> > at $Dispatcher_ae9391b33290.dispatch(Unknown Source) >> > at >> > org.apache.tapestry5.services.TapestryModule$RequestHandlerTerminator >> > .service(TapestryModule.java:302) >> > at >> > org.apache.tapestry5.internal.services.RequestErrorFilter.service(Req >> > uestErrorFilter.java:26) >> > at $RequestHandler_ae9391b33291.service(Unknown Source) >> > at >> > org.apache.tapestry5.services.TapestryModule$3.service(TapestryModule >> > .java:902) >> > at $RequestHandler_ae9391b33291.service(Unknown Source) >> > at >> > org.apache.tapestry5.services.TapestryModule$2.service(TapestryModule >> > .java:892) >> > at $RequestHandler_ae9391b33291.service(Unknown Source) >> > at >> > org.apache.tapestry5.internal.services.StaticFilesFilter.service(Stat >> > icFilesFilter.java:90) >> > at $RequestHandler_ae9391b33291.service(Unknown Source) >> > at >> > xxxxxx.audit.manager.services.AppModule$1.service(AppModule.java:230) >> > >> > at $RequestFilter_ae9391b3328c.service(Unknown Source) >> > at $RequestHandler_ae9391b33291.service(Unknown Source) >> > at $RequestHandler_ae9391b33285.service(Unknown Source) >> > at >> > org.apache.tapestry5.services.TapestryModule$HttpServletRequestHandle >> > rTerminator.service(TapestryModule.java:253) >> > at >> > org.apache.tapestry5.internal.gzip.GZipFilter.service(GZipFilter.java >> > :53) >> > at $HttpServletRequestHandler_ae9391b33287.service(Unknown >> Source) >> > at >> > org.got5.tapestry5.jquery.services.AjaxUploadServletRequestFilter.ser >> > vice(AjaxUploadServletRequestFilter.java:27) >> > at $HttpServletRequestHandler_ae9391b33287.service(Unknown >> Source) >> > at >> > org.apache.tapestry5.upload.internal.services.MultipartServletRequest >> > Filter.service(MultipartServletRequestFilter.java:44) >> > at $HttpServletRequestHandler_ae9391b33287.service(Unknown >> Source) >> > at >> > org.apache.tapestry5.internal.services.IgnoredPathsFilter.service(Ign >> > oredPathsFilter.java:62) >> > at $HttpServletRequestFilter_ae9391b33283.service(Unknown >> Source) >> > at $HttpServletRequestHandler_ae9391b33287.service(Unknown >> Source) >> > at >> > org.apache.tapestry5.services.TapestryModule$1.service(TapestryModule >> > .java:852) >> > at $HttpServletRequestHandler_ae9391b33287.service(Unknown >> Source) >> > at $HttpServletRequestHandler_ae9391b33280.service(Unknown >> Source) >> > at >> > org.apache.tapestry5.TapestryFilter.doFilter(TapestryFilter.java:171) >> > >> > at >> > org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(Servlet >> > Handler.java:1652) >> > at >> > org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java >> > :585) >> > at >> > org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.j >> > ava:143) >> > at >> > org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.jav >> > a:577) >> > at >> > org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandl >> > er.java:223) >> > at >> > org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandl >> > er.java:1127) >> > at >> > org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java: >> > 515) >> > at >> > org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandle >> > r.java:185) >> > at >> > org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandle >> > r.java:1061) >> > at >> > org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.j >> > ava:141) >> > at >> > org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(Cont >> > extHandlerCollection.java:215) >> > at >> > org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerColl >> > ection.java:110) >> > at >> > org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper >> > .java:97) >> > at org.eclipse.jetty.server.Server.handle(Server.java:499) >> > at >> > org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:311) >> > at >> > org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.jav >> > a:257) >> > at >> > org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java >> > :544) >> > at >> > org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPoo >> > l.java:635) >> > at >> > org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool >> > .java:555) >> > at java.lang.Thread.run(Thread.java:745) >> > Caused by: org.apache.tapestry5.runtime.ComponentEventException: Page >> must >> > be sp >> > ecified before initializing for partial page render. [at >> > classpath:xxxxxx/audit/ >> > manager/pages/ManageUsers.tml, line 38] >> > at >> > org.apache.tapestry5.internal.structure.ComponentPageElementImpl.proc >> > essEventTriggering(ComponentPageElementImpl.java:1136) >> > at >> > org.apache.tapestry5.internal.structure.ComponentPageElementImpl.acce >> > ss$3100(ComponentPageElementImpl.java:61) >> > at >> > org.apache.tapestry5.internal.structure.ComponentPageElementImpl$ >> > 5.in >> > voke(ComponentPageElementImpl.java:1057) >> > at >> > org.apache.tapestry5.internal.structure.ComponentPageElementImpl$ >> > 5.in >> > voke(ComponentPageElementImpl.java:1054) >> > at >> > org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(Operati >> > onTrackerImpl.java:74) >> > ... 71 more >> > Caused by: java.lang.IllegalStateException: Page must be specified >> before >> > initia >> > lizing for partial page render. >> > at >> > org.apache.tapestry5.internal.services.PageRenderQueueImpl.partialRen >> > derInitialized(PageRenderQueueImpl.java:100) >> > at >> > org.apache.tapestry5.internal.services.PageRenderQueueImpl.addPartial >> > MarkupRendererFilter(PageRenderQueueImpl.java:131) >> > at >> > $PageRenderQueue_ae9391b333bf.addPartialMarkupRendererFilter(Unknown >> > Source) >> > at >> > $PageRenderQueue_ae9391b3339c.addPartialMarkupRendererFilter(Unknown >> > Source) >> > at >> > org.apache.tapestry5.internal.services.ajax.AjaxResponseRendererImpl. >> > addFilter(AjaxResponseRendererImpl.java:96) >> > at >> > org.apache.tapestry5.internal.services.ajax.AjaxResponseRendererImpl. >> > addRender(AjaxResponseRendererImpl.java:43) >> > at >> > org.apache.tapestry5.internal.services.ajax.AjaxResponseRendererImpl. >> > addRender(AjaxResponseRendererImpl.java:52) >> > at $AjaxResponseRenderer_ae9391b332c2.addRender(Unknown Source) >> > at >> > xxxxxx.audit.manager.components.UsersComponent.onAlphabetFilter(Users >> > Component.java:263) >> > at >> > xxxxxx.audit.manager.components.UsersComponent.dispatchComponentEvent >> > (UsersComponent.java) >> > at >> > org.apache.tapestry5.internal.structure.ComponentPageElementImpl.disp >> > atchEvent(ComponentPageElementImpl.java:927) >> > at >> > org.apache.tapestry5.internal.structure.ComponentPageElementImpl.proc >> > essEventTriggering(ComponentPageElementImpl.java:1112) >> > ... 75 more >> > [INFO] AppModule.TimingFilter Request time: 86 ms >> > >> > >