Re: back-button causes Wicket state and page displayed to be out of synch

2010-10-25 Thread Daniel Stoch
Hi,

On Fri, Oct 22, 2010 at 12:53 PM, drf davidrfi...@gmail.com wrote:

 I have encountered the following serious issue:

 My application consists of one WebPage which has an AjaxTabbedPanel. Each
 tab has an associated panel which includes several menu items (links) which
 can be selected. This works well.
 However, if the user selects the back-button (once back, then once forward)
 they can come back to the page with a different tab displayed than the one
 selected before the back-button was used. If a menu link is then clicked on,
 an exception is thrown. This appears to be because the Wicket on the server
 is now out of synch with the html displayed. Wicket thinks a different panel
 is selected than the one the user sees now.

Turn off page caching in a browser for ajax pages.

--
DS

-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org



back-button causes Wicket state and page displayed to be out of synch

2010-10-22 Thread drf

I have encountered the following serious issue:

My application consists of one WebPage which has an AjaxTabbedPanel. Each
tab has an associated panel which includes several menu items (links) which
can be selected. This works well.
However, if the user selects the back-button (once back, then once forward)
they can come back to the page with a different tab displayed than the one
selected before the back-button was used. If a menu link is then clicked on,
an exception is thrown. This appears to be because the Wicket on the server
is now out of synch with the html displayed. Wicket thinks a different panel
is selected than the one the user sees now.

This appears to be a fundamental Wicket problem/issue - apart from disabling
the back button, what are the available approaches?

Here is the stacktrace:
WicketMessage: org.apache.wicket.WicketRuntimeException: component
tabs:panel:subItem_account_balance_summary not found on page
com.drf.hapoalim.gui.menus.TabsDefinitionPage[id = 8], listener interface =
[RequestListenerInterface name=IBehaviorListener, method=public abstract
void org.apache.wicket.behavior.IBehaviorListener.onRequest()]
Root cause:
org.apache.wicket.WicketRuntimeException: component
tabs:panel:subItem_account_balance_summary not found on page
com.drf.hapoalim.gui.menus.TabsDefinitionPage[id = 8], listener interface =
[RequestListenerInterface name=IBehaviorListener, method=public abstract
void org.apache.wicket.behavior.IBehaviorListener.onRequest()]
 at
org.apache.wicket.request.AbstractRequestCycleProcessor.resolveListenerInterfaceTarget(AbstractRequestCycleProcessor.java:426)


at
org.apache.wicket.request.AbstractRequestCycleProcessor.resolveRenderedPage(AbstractRequestCycleProcessor.java:471)


at
org.apache.wicket.protocol.http.WebRequestCycleProcessor.resolve(WebRequestCycleProcessor.java:144)


at org.apache.wicket.RequestCycle.step(RequestCycle.java:1310)
 at
org.apache.wicket.RequestCycle.steps(RequestCycle.java:1428)
 at
org.apache.wicket.RequestCycle.request(RequestCycle.java:545)
 at
org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:479)

at
org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:312)
   
 
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)


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:191)


at
com.springsource.insight.collection.tcserver.request.HttpRequestOperationCollectionValve.invoke(HttpRequestOperationCollectionValve.java:60)


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:293)

at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:849)

at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)


at
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:379)


at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)


at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)


at java.lang.Thread.run(Thread.java:637)
Complete stack:
org.apache.wicket.protocol.http.request.InvalidUrlException:
org.apache.wicket.WicketRuntimeException: component
tabs:panel:subItem_account_balance_summary not found on page
com.drf.hapoalim.gui.menus.TabsDefinitionPage[id = 8], listener interface =
[RequestListenerInterface name=IBehaviorListener, method=public abstract
void org.apache.wicket.behavior.IBehaviorListener.onRequest()]
 at
org.apache.wicket.protocol.http.WebRequestCycleProcessor.resolve(WebRequestCycleProcessor.java:262)


at org.apache.wicket.RequestCycle.step(RequestCycle.java:1310)
 at
org.apache.wicket.RequestCycle.steps(RequestCycle.java:1428)
 at
org.apache.wicket.RequestCycle.request(RequestCycle.java:545)
 at
org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:479)

-- 
View this message in context: 
http://apache-wicket.1842946.n4.nabble.com/back-button-causes-Wicket-state-and-page-displayed-to-be-out-of-synch-tp3006971p3006971.html
Sent from the Users forum mailing list archive at Nabble.com.

-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org



Re: back-button causes Wicket state and page displayed to be out of synch

2010-10-22 Thread Martin Grigorov
Wicket does not support back button for Ajax application out of the box.
Search in Google/Nabble for suggestions how to make it working for your
application.

On Fri, Oct 22, 2010 at 12:53 PM, drf davidrfi...@gmail.com wrote:


 I have encountered the following serious issue:

 My application consists of one WebPage which has an AjaxTabbedPanel. Each
 tab has an associated panel which includes several menu items (links) which
 can be selected. This works well.
 However, if the user selects the back-button (once back, then once forward)
 they can come back to the page with a different tab displayed than the one
 selected before the back-button was used. If a menu link is then clicked
 on,
 an exception is thrown. This appears to be because the Wicket on the server
 is now out of synch with the html displayed. Wicket thinks a different
 panel
 is selected than the one the user sees now.

 This appears to be a fundamental Wicket problem/issue - apart from
 disabling
 the back button, what are the available approaches?

 Here is the stacktrace:
 WicketMessage: org.apache.wicket.WicketRuntimeException: component
 tabs:panel:subItem_account_balance_summary not found on page
 com.drf.hapoalim.gui.menus.TabsDefinitionPage[id = 8], listener interface =
 [RequestListenerInterface name=IBehaviorListener, method=public abstract
 void org.apache.wicket.behavior.IBehaviorListener.onRequest()]
 Root cause:
 org.apache.wicket.WicketRuntimeException: component
 tabs:panel:subItem_account_balance_summary not found on page
 com.drf.hapoalim.gui.menus.TabsDefinitionPage[id = 8], listener interface =
 [RequestListenerInterface name=IBehaviorListener, method=public abstract
 void org.apache.wicket.behavior.IBehaviorListener.onRequest()]
 at

 org.apache.wicket.request.AbstractRequestCycleProcessor.resolveListenerInterfaceTarget(AbstractRequestCycleProcessor.java:426)
 at

 org.apache.wicket.request.AbstractRequestCycleProcessor.resolveRenderedPage(AbstractRequestCycleProcessor.java:471)
 at

 org.apache.wicket.protocol.http.WebRequestCycleProcessor.resolve(WebRequestCycleProcessor.java:144)
 at org.apache.wicket.RequestCycle.step(RequestCycle.java:1310)
 at
 org.apache.wicket.RequestCycle.steps(RequestCycle.java:1428)
 at
 org.apache.wicket.RequestCycle.request(RequestCycle.java:545)
 at
 org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:479)
 at

 org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:312)
 at

 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
 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:191)
 at

 com.springsource.insight.collection.tcserver.request.HttpRequestOperationCollectionValve.invoke(HttpRequestOperationCollectionValve.java:60)
 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:293)
 at
 org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:849)
 at

 org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
 at

 org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:379)
 at

 java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
 at

 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
 at java.lang.Thread.run(Thread.java:637)
 Complete stack:
 org.apache.wicket.protocol.http.request.InvalidUrlException:
 org.apache.wicket.WicketRuntimeException: component
 tabs:panel:subItem_account_balance_summary not found on page
 com.drf.hapoalim.gui.menus.TabsDefinitionPage[id = 8], listener interface =
 [RequestListenerInterface name=IBehaviorListener, method=public abstract
 void org.apache.wicket.behavior.IBehaviorListener.onRequest()]
 at

 org.apache.wicket.protocol.http.WebRequestCycleProcessor.resolve(WebRequestCycleProcessor.java:262)
 at org.apache.wicket.RequestCycle.step(RequestCycle.java:1310)
 at
 org.apache.wicket.RequestCycle.steps(RequestCycle.java:1428)
 at
 org.apache.wicket.RequestCycle.request(RequestCycle.java:545)
 at
 org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:479)

 --
 View this message in context:
 http://apache-wicket.1842946.n4.nabble.com/back-button-causes-Wicket-state-and-page-displayed-to-be-out-of-synch-tp3006971p3006971.html
 Sent from the Users forum mailing list archive at Nabble.com.

 -
 To unsubscribe, e-mail: 

Re: back-button causes Wicket state and page displayed to be out of synch

2010-10-22 Thread Alexander Morozov

Check wicketstuff's jquery project for HistoryAjaxBehavior. May be it helps.


drf wrote:
 
 I have encountered the following serious issue:
 
 My application consists of one WebPage which has an AjaxTabbedPanel. Each
 tab has an associated panel which includes several menu items (links)
 which can be selected. This works well.
 However, if the user selects the back-button (once back, then once
 forward) they can come back to the page with a different tab displayed
 than the one selected before the back-button was used. If a menu link is
 then clicked on, an exception is thrown. This appears to be because the
 Wicket on the server is now out of synch with the html displayed. Wicket
 thinks a different panel is selected than the one the user sees now.
 
 This appears to be a fundamental Wicket problem/issue - apart from
 disabling the back button, what are the available approaches?
 


-- 
View this message in context: 
http://apache-wicket.1842946.n4.nabble.com/back-button-causes-Wicket-state-and-page-displayed-to-be-out-of-synch-tp3006971p3008140.html
Sent from the Users forum mailing list archive at Nabble.com.

-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org