Hi, Put a breakpoint at RequestCycle#setResponsePage(Class, PageParameters) and see who and why is calling it. This will tell you the reason. If this doesn't help then put breakpoints in RestartReponseAtInterceptPageException constructors.
Martin Grigorov Wicket Training and Consulting https://twitter.com/mtgrigorov On Wed, Aug 31, 2016 at 5:06 PM, durairaj t <[email protected]> wrote: > I got the same issue in Wicket 1.5, so I migrated it to 6.23, but still it > is happening. > > Moreover, I used "*Session.get().replaceSession()**;*" just to reproduce > the issue. it will not be in the actual application code. > > and I just used "* WebSession.get().clear(); *, *Session.get().clear(); , * > *WebSession.get().**replaceSession()*" to reproduce the issue. they are > also loading login page as it is happening in the application. > > I don't know the exact code or component or reason for this issue. > > > On Wed, Aug 31, 2016 at 10:51 AM, Francois Meillet < > [email protected]> wrote: > > > Javadoc from Session # replaceSession() says : Call() upon login to > > protect against session fixation. > > > > Until Wicket version 6.21 the destroy method did not set the session id > to > > null. > > In 6.23, Session # destroy() set session#id to null, this is why Login > > Page is loaded. > > > > Hope this helps > > > > François > > > > > > > > > Le 31 août 2016 à 16:21, durairaj t <[email protected]> a écrit : > > > > > > Thank you for your quick response. > > > > > > *Session:* 30 minutes. > > > > > > *Html Header:* > > > > > > <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" " > > > http://www.w3.org/TR/html4/loose.dtd"> > > > <html xmlns:wicket="http://wicket.apache.org"> > > > > > > <head> > > > <link rel="SHORTCUT ICON" href="images/favicon.ico" type="image/ico" > > /> > > > > > > <meta http-equiv="Page-Enter" content="blendTrans(Duration=0)"> > > > <meta http-equiv="Page-Exit" content="blendTrans(Duration=0)"> > > > > > > <title> > > > <wicket:message key="appname" /> - > > > <div wicket:id="titlelable"> </div> - > > > <wicket:message key="pagename" /> > > > </title> > > > <link rel="stylesheet" type="text/css" href="theme/Master.css"> > > > <link rel="stylesheet" type="text/css" > href="theme/pageBlocking.css"> > > > <link type="text/css" rel="stylesheet" > href="Calendar/css/jscal2.css" > > /> > > > <link type="text/css" rel="stylesheet" > > > href="Calendar/css/border-radius.css" /> > > > <link id="skin-steel" title="Gold" type="text/css" rel="stylesheet" > > > href="Calendar/css/steel/steel.css" /> > > > <script src="Calendar/js/jscal2.js"></script> > > > <script src="Calendar/js/lang/en.js"></script> > > > > > > <script type="text/javascript" > > > src="javascripts/pageBlocking.js"></script> > > > <script type="text/javascript" > > > src="javascripts/aim-hrs-autocomplete.js"></script> > > > <script type="text/javascript" src="javascripts/aim_util.js"> > > </script> > > > <script type="text/javascript" src="javascripts/mvl.js"></script> > > > <script type="text/javascript" src="javascripts/masks.js"></script> > > > <script type="text/javascript" src="javascripts/yetii.js"></script> > > > <script language="JavaScript" > > > src="jspspellcheck/spellcheck-caller.js"></script> > > > > > > > > > > > > <script language="javascript" type="text/javascript"> > > > //credit: http://psacake.com/web/js.asp > > > function imposeMaxLength(Object, evt, MaxLen) { > > > var e = window.event ? event.keyCode : evt.which > > > if (e == 8 || e == 46 || (e >= 37 && e <= 40)) return true; > > > //bs, del, arrows > > > return (Object.value.length <= MaxLen); > > > } > > > </script> > > > > > > <!-- > > > <style type="text/css"> > > > input:focus,textarea:focus { > > > background-color: lightyellow; > > > } > > > </style> > > > --> > > > > > > <style> > > > div.wicket-aa { > > > font-family: sans-serif; > > > font-size: 12px; > > > background-color: white; > > > border-width: 2px; > > > border-color: gray; > > > border-style: solid; > > > padding: 2px; > > > margin: 1px 0 0 0; > > > text-align: left; > > > width: 120px; > > > } > > > > > > div.wicket-aa ul { > > > list-style: none; > > > padding: 2px; > > > margin: 0; > > > width: 100px; > > > } > > > > > > div.wicket-aa ul li.selected { > > > background-color: #DEEFF7; > > > padding: 2px; > > > margin: 0; > > > width: 100px; > > > } > > > > > > div.imxt-vista tr.imxt-grid-row:hover td.imxt-cell, > > > div.imxt-vista tr.imxt-grid-row:hover td.imxt-sorted {} > > > </style> > > > > > > > > > </head> > > > > > > > > > *Java Code:* > > > > > > > > > > > > String timeout= "1750000"; > > > if(AppSession.getObjAimShell() != null && > > > AppSession.getObjAimShell().getTimeoutLimit() !=null) > > > timeout = "" + ((AppSession.getObjAimShell().getTimeoutLimit() * > > 0.9)*1000); > > > final Model<String> sessionTimeoutInterval = new > Model<String>(timeout); > > > HiddenField sessionTimeoutIntervalField = new > > > HiddenField("sessionTimeoutInterval", sessionTimeoutInterval) ; > > > sessionTimeoutIntervalField.setOutputMarkupId(true); > > > sessionTimeoutIntervalField.setMarkupId("sessionTimeoutInterval"); > > > add(sessionTimeoutIntervalField); > > > > > > > > > *Java Script:* > > > var sessionPingTime = 1750000; > > > var sessionTimerId = null; > > > > > > function resetSessionTimer() { > > > try{ > > > if(document.getElementById('sessionTimeoutInterval')) { > > > sessionPingTime = document.getElementById('sessionTimeoutInterval'). > > value; > > > } > > > if(parent) { > > > parent.clearTimeout(parent.sessionTimerId); > > > parent.sessionTimerId = null; > > > parent.sessionTimerId = parent.setTimeout("windowCloseSignOff();", > > > sessionPingTime); > > > }else { > > > clearTimeout(parent.sessionTimerId); > > > sessionTimerId = null; > > > sessionTimerId = setTimeout("windowCloseSignOff();", sessionPingTime); > > > } > > > }catch(c){showScriptError(c, 'resetSessionTimer');} > > > } > > > > > > > > > On Wed, Aug 31, 2016 at 10:05 AM, Francois Meillet < > > > [email protected]> wrote: > > > > > >> Hi, > > >> > > >> What is the session-timeout ? > > >> Can you show the html page header ? and any java code that modify it. > > >> > > >> François > > >> > > >> > > >> > > >>> Le 31 août 2016 à 15:49, durairaj t <[email protected]> a > écrit : > > >>> > > >>> I'm migrating to wicket 6.23, createPage() is working as expected in > > >> many > > >>> modules, but not in the below scenario. > > >>> > > >>> > > >>> There is a search modal window in the application, which is used to > > >> search > > >>> data and keep the entire Page in session to retrieve the data back > from > > >> the > > >>> session (for the Back button functionality). > > >>> > > >>> *Issue:* > > >>> > > >>> The search window is just working for 10 to 15 minutes as expected > and > > >> then > > >>> loading Login Page suddenly. > > >>> > > >>> In debug: (I verified the below in the eclipse debugging mode) > > >>> > > >>> 1. Returning page from session > > >>> 2. Page from session is *NOT *null. > > >>> 3. Session ID is *NOT *modified anywhere in the application. > > >>> 4. It is just happening only in the search window until I'm clearing > > the > > >>> Search Page object (SrcPage) . But application is not asking me to > > >> re-login > > >>> once it happened. > > >>> > > >>> *Code snippet:* > > >>> > > >>> public Page createPage() { > > >>> return AppSession.getObjAppShell().getSrcPage(); > > >>> }); > > >>> > > >>> > > >>> *Reproducing Issue:* > > >>> > > >>> I can reproduce the issue by replacing the session in the > createPage() > > >>> block, but I'm not sure whether the problem is session or something > > else. > > >>> > > >>> Example; > > >>> > > >>> public Page createPage() { > > >>> Session.get().replaceSession();// used to reproduce the issue. > > >>> return > > >>> AppSession.getObjAppShell().getSrcPage(); > > >>> }); > > >>> > > >>> > > >>> *Any help?* > > >>> > > >>> > > >>> > > >>> > > >>> Thank you. > > >> > > >> > > >> --------------------------------------------------------------------- > > >> To unsubscribe, e-mail: [email protected] > > >> For additional commands, e-mail: [email protected] > > >> > > >> > > > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: [email protected] > > For additional commands, e-mail: [email protected] > > > > >
