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]
> > >
> > >
> >
>

Reply via email to