Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 52701
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 10, 20262026-05-10T16:56:53+00:00 2026-05-10T16:56:53+00:00

It is a well known problem to every web developer. As far as I

  • 0

It is a well known problem to every web developer. As far as I tried to find a good solution to this problem – there was none (or at least I could not find it).

Lets assume the following:

The user does not behave, as he was expected to. The actual project I’m working in uses a navigation within the web portal. But if the user uses the browser’s back button, the whole thing becomes jeoprady[?] and the result was not always predictable.

We used the struts framework and stored the back-url into forms – at some places, where we needed a back-url – this has been rendered out of this form’s back-url. For there was only a singe field for this information and therefore it was not possible of going back multiple steps.

When you change the "struts-flow" – which may result in using a different form – this information will be lost.

If the user dares to put a bookmark somewhere within your webapp – this information may never have been set and again the result will again be either unpredictable or not flexible enough!

My "solution":

I was storing every navigation-relevant page the user visited onto a stack-like storage into the session. This means a navigation-path is collected and stored for later navigations.

At any page within the webapp, where back-navigations are involved I used a self-made tag which renders the stack-content into the url.

And thats it. When this back-url was clicked, the stack has been filled with the content from the back-url clicked by the user (which holds all information from the stack once the back-link was rendered).

This is quite clear, because a click on a link is a clear state, where the web developer exactly knows, where the user "is" a this very moment – absolutely independant from whatever the user did before (e.g. hitting the browser back button multiple times). Then the navigation stack is built upon this new state.

Resumé: It becomes clear, that this won’t be the best solution. But it allows storing additional information on the stack like page parameters and some other useful stuff (further developments possible).

So, what were your solutions to this problem?

cheers,

mana

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. 2026-05-10T16:56:54+00:00Added an answer on May 10, 2026 at 4:56 pm

    The stack solution sounds interesting, but it will probably break if the user chooses to navigate ‘in parallel’ on different tabs or using bookmarks.

    I’m afraid I don’t really understand why you have to keep all this state for each user: ideally the web should follow the REST principle and be completely stateless. Therefore a single URL should identify a single resource, without having to keep the navigation history of each user.

    If your web app relies heavily on AJAX, you could try to implement something like GMail (admittedly, not so easy…), where each change in the interface is reflected in a change in the page URL. Therefore each page is identified by the current URL and the user can navigate concurrently or use the back button as usual.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Ask A Question

Stats

  • Questions 67k
  • Answers 67k
  • Best Answers 0
  • User 1
  • Popular
  • Answers
  • Editorial Team

    How to approach applying for a job at a company ...

    • 7 Answers
  • Editorial Team

    How to handle personal stress caused by utterly incompetent and ...

    • 5 Answers
  • Editorial Team

    What is a programmer’s life like?

    • 5 Answers
  • added an answer Pointers (ie. the '*') should be used where the passing… May 11, 2026 at 11:59 am
  • added an answer The problem you're running into is that Canvas, unlike many… May 11, 2026 at 11:59 am
  • added an answer You cannot put a variable into an array, and that's… May 11, 2026 at 11:59 am

Related Questions

It is a well known problem to every web developer. As far as I
EDIT: It is not a listbox. My mistake. It is a list view. I
There is a console Java application which is supposed to run until it is
I know it is a good idea to store configuration data in app.config (e.g.
This is a very simple question with a simple answer, but it is not
I know it is a good practice to declare virtual destructors for base classes
I am thinking it is a best practice to declare them as static, as
I thought it is a very simple task to export data in a view
I wonder if it is a good practice to use JUnit's @Ignore. And how
This is weird. It is a trivial problem: A std::string with bits with length

Trending Tags

analytics british company computer developers django employee employer english facebook french google interview javascript language life php programmer programs salary

Top Members

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.