Top Description Constructors Methods
jakarta.faces.application

public abstract Class NavigationHandler

extends Object
Class Inheritance
Known Direct Subclasses
jakarta.faces.application.NavigationHandlerWrapper, jakarta.faces.application.ConfigurableNavigationHandler
Imports
jakarta.faces.context.FacesContext

A NavigationHandler is passed the outcome string returned by an application action invoked for this application, and will use this (along with related state information) to choose the view to be displayed next.

A default implementation of NavigationHandler must be provided by the Jakarta Faces implementation, which will be utilized unless setNavigationHandler() is called to establish a different one. An implementation of this class must be thread-safe. This default instance will compare the view identifier of the current view, the specified action binding, and the specified outcome against any navigation rules provided in faces-config.xml file(s). If a navigation case matches, the current view will be changed by a call to FacesContext.setViewRoot(). Note that a null outcome value will never match any navigation rule, so it can be used as an indicator that the current view should be redisplayed.

Constructor Summary

AccessConstructor and Description

Method Summary

Modifier and TypeMethod and Description
public abstract void
handleNavigation(FacesContext
The FacesContext for the current request
context
,
String
The action binding expression that was evaluated to retrieve the specified outcome, or null if the outcome was acquired by some other means
fromAction
,
String
The logical outcome returned by a previous invoked application action (which may be null)
outcome
)

Perform navigation processing based on the state information in the specified FacesContext, plus the outcome string returned by an executed application action.

public void
handleNavigation(FacesContext
The FacesContext for the current request
context
,
String
The action binding expression that was evaluated to retrieve the specified outcome, or null if the outcome was acquired by some other means
fromAction
,
String
The logical outcome returned by a previous invoked application action (which may be null)
outcome
,
String
The defining document id of the flow into which this navigation will cause entry.
toFlowDocumentId
)

Overloaded variant of handleNavigation(jakarta.faces.context.FacesContext, java.lang.String, java.lang.String) that allows the caller to provide the defining document id for a flow to be entered by this navigation.

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Constructor Detail

Method Detail

handleNavigationback to summary
public abstract void handleNavigation(FacesContext context, String fromAction, String outcome)

Perform navigation processing based on the state information in the specified FacesContext, plus the outcome string returned by an executed application action.

If the implementation class also extends ConfigurableNavigationHandler, the implementation must guarantee that the logic used in a call to ConfigurableNavigationHandler#getNavigationCase is used in this method to determine the correct navigation.

This method must set the render targets (used in partial rendering) to render all invoking jakarta.faces.context.PartialViewContext#setRenderAll) if the view identifier has changed as the result of an application action (to take into account Ajax requests).

Parameters
context:FacesContext

The FacesContext for the current request

fromAction:String

The action binding expression that was evaluated to retrieve the specified outcome, or null if the outcome was acquired by some other means

outcome:String

The logical outcome returned by a previous invoked application action (which may be null)

Exceptions
NullPointerException:
if context is null
handleNavigationback to summary
public void handleNavigation(FacesContext context, String fromAction, String outcome, String toFlowDocumentId)

Overloaded variant of handleNavigation(jakarta.faces.context.FacesContext, java.lang.String, java.lang.String) that allows the caller to provide the defining document id for a flow to be entered by this navigation. For backward compatibility with decorated NavigationHandler implementations that conform to an earlier version of the specification, an implementation is provided that calls through to handleNavigation(jakarta.faces.context.FacesContext, java.lang.String, java.lang.String), ignoring the toFlowDocumentId parameter.

Parameters
context:FacesContext

The FacesContext for the current request

fromAction:String

The action binding expression that was evaluated to retrieve the specified outcome, or null if the outcome was acquired by some other means

outcome:String

The logical outcome returned by a previous invoked application action (which may be null)

toFlowDocumentId:String

The defining document id of the flow into which this navigation will cause entry.

Exceptions
NullPointerException:
if context is null