Solved

Servlet Question

Posted on 2006-07-17
2
210 Views
Last Modified: 2010-04-01
Here is the scenario. I try to make it undestandable as possible. This is a 100% servlet quesiton

1.I have a login screen. User logs in correct. Directs to another Servlet (Say UserInputData Servlet).
2.In this (UserInputData) servlet I have a "log out" link. If I click in this link the system will pop out a
   another servlet (say EndMessage servlet). All it asks for is a confirmation. There are two buttons in
   it(in EndMessage Servlet). They are -  "Want to continue with work" and  "Want to Quit". If the user
   clicks on "Want to Quit" it re-directs to the login screen.

   in the doPost() of EndMessage , I invalidate all session data.

3. So now the user is in the Log-In screen.

4. But On the address bar of the browser if I drop down the list, it has the history of Servlets loaded. For
   example the UserInputData servlet (Which was the one that went into after the login) is also there. So if
   I try to load it independently from selected from teh address bar list, it still loads with the old data.  I have
   coded that servlet (UserInputData) in such a way that if the user is not logged in,  to pop-up a "User Error"
   but although the user is logged out at this time, when I try to load the server (UserInputData) independently,
   from the browser's adress list it still loads. But IF I CLICK THE REFRESH BUTTON ON THE BROWSER, it pops
   the ERROR MESSAGE "User Error" I expect.

   So the question is, How come even if I loaded the servlet from the address history, it still loads the servlet with the
   invalidated information??? I was expecting to see popping the "User Error" because the user is logged out?

Please read this carefully. I tried best to explain the problem I have.
0
Comment
Question by:prain
2 Comments
 
LVL 17

Accepted Solution

by:
gops1 earned 100 total points
ID: 17124165
Expire your Cache:


<%
        // Set to expire far in the past.
        response.setHeader("Expires", "Sat, 6 May 1995 12:00:00 GMT");
        // Set standard HTTP/1.1 no-cache headers.
        response.setHeader("Cache-Control", "no-store, no-cache, must-revalidate");
        // Set IE extended HTTP/1.1 no-cache headers (use addHeader).
        response.addHeader("Cache-Control", "post-check=0, pre-check=0");
        // Set standard HTTP/1.0 no-cache header.
        response.setHeader("Pragma", "no-cache");
%>
0
 

Author Comment

by:prain
ID: 17124332
Bingo!. It works. Great Answer. You made my day!. Thank You!.
0

Featured Post

Gigs: Get Your Project Delivered by an Expert

Select from freelancers specializing in everything from database administration to programming, who have proven themselves as experts in their field. Hire the best, collaborate easily, pay securely and get projects done right.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Read about the ways of improving workplace communication.
Do you use a spreadsheet like Microsoft's Excel?  Have you ever wanted to link out to a non excel file on your computer or network drive?  This is the way I found to do it!
With Secure Portal Encryption, the recipient is sent a link to their email address directing them to the email laundry delivery page. From there, the recipient will be required to enter a user name and password to enter the page. Once the recipient …
A short tutorial showing how to set up an email signature in Outlook on the Web (previously known as OWA). For free email signatures designs, visit https://www.mail-signatures.com/articles/signature-templates/?sts=6651 If you want to manage em…

776 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question