Thank you martin! Let me try this.
On Wed, Aug 31, 2016 at 2:27 PM, Martin Grigorov <[email protected]> wrote: > 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] > > > > > > > > >
