Invalidate session when closing browser

Hi All,
Please anybody help me regarding session invalidate in servlet(web application) when closing browser.
how can do this.
Thanks,

It can't be done in pure servlet because browser closing event is not caught be servlet. Google for JavaScript's onBeforeUnload event and invoke Ajax call to invalidate the session - this is the only way to handle this.

Similar Messages

  • How can i invalidate Session when a browser crashes?

    Hi
    How can i invalidate session when a browser window closed or crashed unexpectedly.
    If user closed the browser window using File->Close, then i'm calling javascript function .... and it is working fine. But when browser window is hanged and closed using ENDTASK, how can i kill that session.
    Please help
    Thanks
    -Vidyadhar

    Well you can't. Execution halts, so anything you would want to do is made impossible: that's why crashes are the #1 enemy of any software developer (that and impossible deadlines). The webserver will remove the session manually when it times out though.

  • How to invalidate session when i browse another url with out closing browse

    Hi,
    How can i find when i type another url and browse to that site without closing the browser.when i left the site i have to invalidate the session.
    how can i recognise this event.
    thanks

    You might be able to do this by catching a javascript event, then you'd need to submit a request back to the server before any session invalidation could occur. Basically, the server never know when the user is gone - that's why there's a timeout in sessions. The only other way is to have a logout button that the user clicks on to send the request to invalidate the session.

  • Close the session when closing the opendoc link

    HI,
    Environment: BOXIR3.1 SP3 FP 3.6
    When the user logging into infoview/CMC that time one session is creating , once logged off session also automatically closing. But when we using the open doc link, we dont have option to sign out the application. At that time we wanted to close the browser. But in CMC still we could see the users session in active. Could you please help us to kill the session when the browser is closed .
    is there any possible to kill such kind if session in BOXIr3.1
    Thanks
    N/A

    Hi,
    You can only kill sessions using the SDK and it's not recommended.
    Sessions should be automatically cleaned from the CMS after the timeout period. If it is not your case, follow the steps indicated in this KBA:
    https://service.sap.com/sap/support/notes/1286471
    Regards,
    Julian

  • Popup to confirm when closing browser window?

    Hi
    I want to display popup confirm window when closing browser window, "changes will be lost" yes or no. for this i searched forums got some idea, about "WORK PROTECT MODE". this will work only when our application running from portal. my doubt is where should i write code for this??? any help
    Thanks,
    kris.

    Hi Thomas,
    We are on ECC6.0 enph5.
    In system configuration in epc.loader(service) the value for work protect mode is set as 1 - Protect unsaved data (open page in a new window) 
    1)Is it possible to override this value within WD ABAP application? for example show popup window when there is unsaved data
    2)In this scenario what is the significance of L_PORTAL_MANAGER->SET_WORK_PROTECT_MODE
    and   L_PORTAL_MANAGER->SET_APPLICATION_DIRTY_FLAG
    3)Where exactly  L_PORTAL_MANAGER->SET_APPLICATION_DIRTY_FLAG has to coded. It does trigger modify method of the view.
    Thanks,
    chamu

  • How to show a confirmation when closing browser window in jdeveloper11g

    Hi
    I'm Using Jdev 11g
    How to show a confirmation when closing browser window in jdeveloper11g
    Regards
    Abhilash

    Abhilash,
    My goodness...
    Didn't search the forum, eh? In fact, didn't even look at the last 5 or 6 posts - this was posted by another user within the past few hours.... Giving a message while closing a jspx page.
    John

  • Is it possible to invalidate session when I click my browsers back button

    Hai
    I have a question.
    I am building a jsp page with multiple forms.As of now,
    no login system has been implemented.
    I need my session to time out when the client click on the back
    button on the browser to prevent data corruption.
    Is there a possible way to do this in Java/ Script
    I know the use of session.invalidate() but how to tie it up to the
    browser's back button
    A second problem
    If I use session.invalidate() on Tomcat 3.2
    I find that it is not invalidated.But this same function on tomcat 4
    doesn't have any problem
    Could anyone help on these issues
    Thanks

    You don't mean you want to invalidate session every time you move to a new page, do you? If you do, after implementation of login system the users will be asked for passwords at each page. If you don't, it's better to use headers for your response.
    response.setHeader("Cache-Control", "no-cache");
    response.setHeader("Expires", "-1");

  • Invalidate session when user clicks back button

    I want to invalidate the session when user clicks back button, so that user cannot refresh and reload a page.
    Any suggestions will be highly appreciated.
    Message was edited by:
    sam_amc

    * SessionInvalidator.java
    * Created on October 27, 2006, 9:18 AM
    package web;
    import java.io.*;
    import java.net.*;
    import javax.servlet.*;
    import javax.servlet.http.*;
    * @author javious
    * @version
    public class SessionInvalidator extends HttpServlet {
        /** Processes requests for both HTTP <code>GET</code> and <code>POST</code> methods.
         * @param request servlet request
         * @param response servlet response
        protected void processRequest(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
            response.setContentType("text/html;charset=UTF-8");
            PrintWriter out = response.getWriter();
            String reposted = request.getParameter("reposted");
            if("true".equals(reposted))
                HttpSession session = request.getSession(false);
                if(session == null)
                    // This is step 4 and beyond
                    out.println("<html>");
                    out.println("<head>");
                    out.println("<title>Servlet SessionInvalidator</title>");
                    out.println("</head>");
                    out.println("<body>");
                    out.println("<h1>Servlet SessionInvalidator at " + request.getContextPath () + "</h1>");
                    out.println("I said, your session is now invalid! Now where are those Duke Dollars at?");
                    out.println("</body>");
                    out.println("</html>");
                else
                    Integer hitCount = (Integer)session.getAttribute("hitCount");
                    if(hitCount == null)
                        // This is step 2 (the "good" - "stay" page.)
                        out.println("<html>");
                        out.println("<head>");
                        out.println("<title>Servlet SessionInvalidator</title>");
                        out.println("</head>");
                        out.println("<body>");
                        out.println("<h1>Servlet SessionInvalidator at " + request.getContextPath () + "</h1>");
                        out.println("Your session is good.<br>");
                        out.println("If you click the browser's back button, you will invalidate your session.");
                        out.println("</body>");
                        out.println("</html>");
                        hitCount = 1;
                        session.setAttribute("hitCount", hitCount);
                    else
                        //We've used up our good visit
                        session.invalidate();
                        // This is step 3
                        out.println("<html>");
                        out.println("<head>");
                        out.println("<title>Servlet SessionInvalidator</title>");
                        out.println("</head>");
                        out.println("<body>");
                        out.println("<h1>Servlet SessionInvalidator at " + request.getContextPath () + "</h1>");
                        out.println("Your session is now invalid");
                        out.println("</body>");
                        out.println("</html>");
            else
                // because the javascript in the following output will never allow a user
                // to continue clicking back any further than this, we can safely create the session.
                // (or perhaps the session can already be created here and this may not be necessary).
                // A problem lies where if the user chooses to "select" a page back in history they thereby
                // potentially skip back "over" this functionality, thus defeating the purpose of it.
                request.getSession(true);
                // This is step 1 (indirection)
                out.println("<html>");
                out.println("<head>");
                out.println("<title>Servlet SessionInvalidator</title>");
                out.println("</head>");
                out.println("<body onload=\"document.getElementById('invalidatorForm').submit()\">");
                out.println("<h1>Servlet SessionInvalidator at " + request.getContextPath () + "</h1>");
                out.println("<form id=\"invalidatorForm\" action=\"SessionInvalidator\" method=\"POST\">");
                out.println("<input type=\"hidden\" name=\"reposted\" value=\"true\">");
                out.println("</form>");
                out.println("</body>");
                out.println("</html>");
            out.close();
        // <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the left to edit the code.">
        /** Handles the HTTP <code>GET</code> method.
         * @param request servlet request
         * @param response servlet response
        protected void doGet(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
            processRequest(request, response);
        /** Handles the HTTP <code>POST</code> method.
         * @param request servlet request
         * @param response servlet response
        protected void doPost(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
            processRequest(request, response);
        /** Returns a short description of the servlet.
        public String getServletInfo() {
            return "Short description";
        // </editor-fold>
    }The problem with even attempting to do this is that with today's browser capabilities, users can optionally choose to jump to a particular page in the browser history and this may not necessarily be the most recent page. In this case, you would also want to invalidate the user's session after already having been there (whatever page that may be). Then you have situations when the user may wish to jump back in history to external pages they were visiting before they reached your own site's pages. Then what happens when they start clicking forward, forward, etc... from there? This is why I prefer writing Swing Clients as alternatives to browser applications. There are soo many possible ways break web applications made for standard web browsers both maliciously and simply by accident or irregular user patterns. Regardless, this servlet would work based on the assumption that all the user(s) would "ever" do aside from moving logically forward is clicking on the browser's "back" button.
    cheers!
    Message was edited by:
    javious

  • Trigger Javascript when closing browser window from CP8

    I worry this isn't possible but here goes....any help would be incredible.
    Recently I was given some great advice on how to trigger a Javascript action in the frame on our LMS which the Captivate file plays in.
    It works perfectly and on the final page triggers the Javascript which send usage back to the LMS and forward the user to a page which allows them to rate the course.
    The code was as follows:
    top.code.closeSCOContent();
    closeSCOContent() is something written into our LMS.
    However the obvious issue occurs when a user just closes the browser window and for some reason our LMS doesn't record any bookmarking or any data.
    The only way it seems to do this is if that function is called.
    So using the window.onunload() or the DOFinish; function is there a way I can edit any file in the Captivate output to trigger this function when closing the browser?
    Long shot I know but currently the best I have managed is getting the course to trigger this as soon as it loads rather than closing the window?
    Massive thanks in advance for any advice.

    Any solution to ensure the data is written back to the LMS would solve the issue.
    Currently when the close button is pressed nothing happens at all and it's a big problem.
    Triggering this .closeSCOContent() function would be the ideal, but if it's not possible anything to write back would be best.
    When you say <body onbeforeunload="top.code.closeSCOContent();">
    Do you mean putting this in the HTML file of the output which currently is:
    <body bgcolor="#f2f2f2">
    and change this to:
    <body onbeforeunload="top.code.closeSCOContent();" body bgcolor="#f2f2f2">

  • Forms behavior when closing browser or forms, javascript

    Hi
    I want to be able to run Jinitiator in separate frame, but with the possibilities to close the browser when closing the forms and in on the same html page I would like to have the possibilities to fire a message if the end user try to close the web browser directly (not by closing the forms).
    I find in the forum solutions for the two constraints but if I try to put this two behavior together: message fire even when I close the forms because the post-form trigger try to close the browser. I try to put condition on the alert with a variable but do not succeed. how could I manage to setup the two behaviour together?
    Is it possible to put condition in javascript to see if the end-user close the browser via forms or via the browser?
    thanks

    I've installed the FormsStart utility...and it looks great.
    However, if I have separateFrame=true, when my forms application starts, it opens 2 applet windows.
    If I have separateFrame=false, everything looks ok except that when I alt-tab to a different application and return - my focus is not returned to the field that the cursor was in.
    Is this something inherent with having separateFrame=false? Is there a way around it?
    Cheers,
    Dave

  • How to force the end of an user session when the browser is closed?

    Hi,
    When the user close the browser, the portal session remains. If the user open a new browser window, we ill be back to the portal without the need of a new Login. Is there any way to force a new login in this situation. A similar problem happens also when there is a reboot in the application server. After the reboot, all users can connect to the App Server without the necessity to login.
    Is ther any way to avoid this kind of behavior?
    Thanks.

    Ok... Its as i thought... unfortunatly...
    Gonna mark your latest post again as possible solution, just in case someone comes with any sort of out of the box thing...
    Thx for your help Kglad

  • Portal not closing session when closing the browser window

    Hi,
    We have a problem in portal where the user logs onto Portal with their userid/password and has another window opened eg. www.google.com.
    The user then closes their browser(x) on IE, but still has the other session opened. (www.google.com)
    Later the user tries to logon to Portal, but is not prompted with their userid/password, and is taken directly into Portals.
    This is a problem, we want the users to always be prompted with their userid/password.
    Thanks
    Sushanth

    If the second browser session is a child of the first (e.g. started via Ctrl-N) the session context is inherited, including session cookies (here: MYSAPSSO2), which are relevant for user authentication against the portal.
    That's how IE works.
    If the second browser is a new instance and the session cookie is set in this browser session as well, it's a browser bug. Try to update OS and/or IE.

  • Prompting users for confimation when closing browser window

    Hi All,
    I would like to prompt the user with a popup-screen asking for confirmation that he wants to close the browser when hitting the browser-close ('X') button. Is this possible ?
    If the user chose to cancel the browser window shoud remain open, with all content as it was... and of course if he chooses to continue the window should just close.
    the WDA app is straight forward, and not running inside the portal.
    Thanx in advance
    -Tonni

    Hi Tonni,
    I thought I should add - the portal does implement a work protection mode that does allow you to prompt users if they navigate away from your page - and one of the best ways to implement that is through the FPM and its work protect mode interface.
    However, that still doesn't help, I'm afraid, in the case where you're trying to stop the user closing the browser window...
    I should also point out that some browsers do indeed produce an event which can be trapped on close of the window, and have been hugely exploited by website designers - to the extent that later/better versions no longer support it. Remember the web pages that when you closed spawned 3 more, and those 3 more etc. etc.
    Cheers,
    Chris
    edit:  also worth pointing out that the "Close" button provided within a portal session by the FPM is a form of navigation and can be trapped. Likewise any internal navigation button that perform the same sort of thing within your app.
    Edited by: Chris Paine on Mar 29, 2010 3:08 PM

  • Firefox is saving last session when closed, and it won't open a new window once a session is started.

    Firefox 3.6.13 running on Windows XP SP 3, Zonealarm 9.3
    Noticed that I can no longer open new windows - the cursor blinks momentarily and then nothing happens. After closing a Firefox window, cannot run Firefox without a system restart. After a system restart, Firefox will open but will either restore the last session or give an error that it cannot restore the last session. My start-up option is to go to my Home Page, which is google. I have uninstalled and reinstalled Firefox and the problem continues.

    The "System Tray" is located at the very bottom right of your screen and is a list of most/all running applications that will show in this list.
    For your SysFader issue, this "may" be the problem:
    1 Find the "My Computer" desktop icon and right-click it. A pull-down menu will appear. Select "Properties."
    2 Click on the "Advanced" tab. This will load a new page of options.
    3 Select the "Visual Effects" tab at the top of the window and deselect "Animate Windows when minimizing and maximizing," "Fade or slide menus into view," "Fade or slide Tool Tips into view" and "Fade out Menu items after checking."
    4 Click "OK." This will remove most if not all of the Sysfader effects, at the same time correcting related errors that used to come up during opening a new file or program.

  • How to activate save session when closing multiple tabs?

    i've opened many tabs that i want. When I close Firefox there are many tabs. Those tabs have to be restored when i open again Firefox. how to activate in firefox 4.o. In firefox 3.6 it is asking defaultly to save sessions.

    In Firefox 4 you can always restore the previous session via Firefox > History > Restore Previous Session
    You can set the warn prefs on the about:config page to true via the right-click context menu or toggle with a double left-click.
    * browser.showQuitWarning, see http://blog.zpao.com/post/3174360617/about-that-quit-dialog
    * browser.tabs.warnOnClose, see http://kb.mozillazine.org/About%3Aconfig_entries
    * browser.warnOnQuit , see http://kb.mozillazine.org/browser.warnOnQuit
    * browser.warnOnRestart , see http://kb.mozillazine.org/browser.warnOnRestart
    To open the <i>about:config</i> page, type <b>about:config</b> in the location (address) bar and press the "<i>Enter</i>" key, just like you type the url of a website to open a website.<br />
    If you see a warning then you can confirm that you want to access that page.<br />
    * http://kb.mozillazine.org/about%3Aconfig

Maybe you are looking for

  • Timecode problem

    I'm trying to batch capture new footage I filmed on a 24p camera. In the "log and capture" screen, the footage plays, but the timecode isn't changing. It's all 0's and the in and out says "not set". I try clicking the in and out poiints while it play

  • Security Control on Payment Medium File

    Hi! Experts, Currently, our Auditor has a question : Data Medium Exchange file is first created for Vendor/Employee payments. Before Finance/HR staffs transmit the files to the Bank, how to make sure the DME file is not append/modified (especially BA

  • Problem with Report Designer

    Hi Gurus, I am unable to create new report, when I want to insert a dataprovider in Report designer I have the following errors. An error occurred in the BI components on the SAP J2EE Engine. What i have to do now please suggest me Thanks in advance

  • Sanitizing the CE5xx transaction logs

    We are currently producing the squid (extended) transaction logs on the content engines with the sanitize feature disabled. I do not want to change the configuration on the CE, as the information in the logs is being used for reporting purposes. Is t

  • Processing incoming audio for broadcasting

    I'm sure this questions has been asked a couple of times so far, but I just don't have the time to sift through all the posting pages to find my exact question (though I did make it to page 25). The purpose: I'm currently designing a server that's me