Server-Controlled Browser Navigation for Stateful Applications

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional browsers do not effectively communicate Back and Forward button actions to servers, leading to issues with stateful applications, where users may encounter invalid data or errors due to the browser's caching behavior, especially with HTTP GET and POST requests, and existing solutions like deactivating the Back button or preventing caching are inadequate.

Innovation Solution

Implementing a system where the server determines the actions to perform when the user clicks the Back or Forward button by loading invisible pages and specifying undo or redo requests, ensuring that the server updates the application state accordingly, thereby providing a real undo and redo functionality.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If the browser uses cached versions of pages for Back button navigation, then navigation speed is improved, but data validity deteriorates because the server is not aware of the navigation and may have changed the application state

Engineering Contradiction:
Improvenavigation speedVSAvoiddata validity
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The patent implements a feedback mechanism where the browser sends notifications to the server about Back and Forward button actions. The server responds by providing the current application state, ensuring the client has valid data while maintaining fast navigation through cached pages.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent uses preliminary action by having the server prepare and provide the current application state in advance before the user actually needs it. When the Back button is clicked, the browser already has the cached page for immediate display, and the server state is updated in the background to ensure consistency.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If the Back button is deactivated to prevent incorrect undo operations, then data validity is improved, but ease of operation deteriorates because users cannot navigate back even when appropriate

Engineering Contradiction:
Improvedata validityVSAvoidnavigation ease
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The patent makes the Back button dynamic by enabling it only when appropriate based on server response. The button's enabled state changes based on whether the server has processed the navigation request and confirmed the application state, allowing navigation when safe and preventing it when inappropriate.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The server provides feedback about whether Back navigation is appropriate by controlling the enabled state of the Back button. This feedback mechanism allows the button to remain active when navigation is safe while being deactivated only when it would cause problems, maintaining both reliability and usability.

Inventive Principle:
Principle #23Feedback

3Reliability

If invisible pages are loaded to enable server-controlled navigation actions, then reliability is improved through proper state management, but device complexity increases due to additional page loading mechanisms

Engineering Contradiction:
Improvestate managementVSAvoidbrowser mechanism complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent extracts the navigation control logic from the visible application pages and places it in separate invisible pages. These dedicated invisible pages handle the Back and Forward button actions, separating concerns and making the system more maintainable despite the added complexity.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The invisible pages serve as intermediaries between the user's Back/Forward button clicks and the server's state management system. They translate user actions into proper server communication and coordinate the state changes, acting as a mediator that simplifies the overall interaction flow.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS7685526B2Providing navigation in a browser
Publication Date: 2010.03.23 SAP SE
  • US7685526B2 patent drawing
  • US7685526B2 patent drawing
  • US7685526B2 patent drawing

AI summary

When a user clicks a Back button or a Forward button while reviewing an application page in a browser, the client performs an action in response which is specified by a server. The Back and Forward buttons may be controlled by the server and may be used to provide real undo and redo functionality for stateful server applications. The functionality may be implemented using invisible pages loaded in the browser. If it is determined that undo or redo cannot be performed, the client may continue to display the application page, optionally with a message to the user.