Stream-Based Portal Navigation State Serialization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for serializing navigational state in portal applications result in excessively long URLs and increased processing time due to the complexity of managing state across multiple portlets and user interface elements, exceeding HTTP-specific URL length limits and impacting performance.

Innovation Solution

A stream-based serialization method that transforms hierarchical navigational state into a flat character-based representation through two sub-processes: a hierarchy-oriented event-based filter chain for initial compaction and a hierarchy-independent character-based writer chain for further compression and encoding, ensuring efficient URL generation and reduced markup size.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of information

If traditional XML or Java object serialization techniques are used to serialize navigational state, then the hierarchical structure and completeness of state information are preserved, but the URL length becomes excessively long and exceeds HTTP limits

Engineering Contradiction:
Improvenavigational state information completenessVSAvoidURL length
Core Design Contradiction:
Loss of informationVSLength of stationary object

Solution Approach 1:

The patent transforms the navigational state representation by changing parameters: converting hierarchical XML/Java objects into a flat key-value structure, encoding values in base64 format, and compressing the overall structure. This parameter transformation reduces URL length while preserving essential navigational state information through selective serialization of only necessary portlet parameters.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent extracts only the essential navigational state information from the complete hierarchical state structure. It identifies and serializes only the relevant portlet parameters that are necessary for restoration, leaving out redundant or non-essential state data. This extraction approach maintains information completeness for navigation purposes while significantly reducing URL length.

Inventive Principle:
Principle #2Taking out (Extraction)

2Reliability

If complete navigational state of all portlets is serialized to ensure accurate view restoration, then bookmarkability and back/forward functionality are maintained, but processing time increases

Engineering Contradiction:
Improveview restoration accuracyVSAvoidserialization processing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent performs preliminary actions by pre-identifying and caching the essential portlet parameters that need to be serialized. It establishes a template for navigational state serialization that avoids redundant processing during actual URL generation. This preliminary preparation reduces processing time while ensuring that all necessary state information is captured for accurate view restoration.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent changes the serialization parameters from detailed hierarchical representation to a compressed key-value format with base64 encoding. This parameter change reduces the amount of data processing required during serialization while maintaining sufficient information for reliable view restoration, thereby reducing processing time without sacrificing reliability.

Inventive Principle:
Principle #35Parameter changes

3Adaptability or versatility

If detailed navigational state information is included to support complex portal views, then functionality and user experience are improved, but markup size increases

Engineering Contradiction:
Improveportal view complexity supportVSAvoidmarkup size
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The patent transforms complex navigational state data into a compact markup format by changing parameters: using base64 encoding to reduce character count, flattening hierarchical structures into linear key-value pairs, and compressing the overall representation. This allows detailed portal view information to be represented in minimal markup size while maintaining full adaptability for complex views.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent creates a simplified copy of the navigational state structure that contains only the essential information needed for view restoration. Instead of copying the complete hierarchical object structure, it creates a compact key-value representation that captures the necessary state information in a space-efficient format, reducing markup size while preserving functionality.

Inventive Principle:
Principle #26Copying

Data Source

PatentEP1960909B1A method, system, and computer program product for efficiently serializing navigational state in a portal
Publication Date: 2011.09.28 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • EP1960909B1 patent drawingFigure 1~2
  • EP1960909B1 patent drawingFigure 3~9
  • EP1960909B1 patent drawingFigure 5~6

AI summary

The present invention provides a method, System, and Computer program product for efficiently serializing navigational State into URLs or the header of the new portal page by using a complete stream-based serialization divided into two sub-processes which are both stream-based. The first stream-based serialization sub-process which is hierarchy-oriented uses the hierarchical object representation of the navigational State and transforms it into a series of events. At the end of the sub-process the compacted navigational State information carried by the received events is transformed into a character-based representation and the hierarchical structure of the navigational State is derived from the order of the received events and transformed into an additional character-based representation both being directly streamed to the second sub- process. The second stream-based serialization sub-process which is hierarchy-independent uses the result of the first sub-process and applies further compression and character encoding strategies and finally streams the compressed and character encoded information into a URL or header of said new Portal page . Both sub-processes are seamlessly linked together.