Spring Web Flow

org.springframework.faces.webflow
Class JsfView

java.lang.Object
  extended by org.springframework.faces.webflow.JsfView
All Implemented Interfaces:
View

public class JsfView
extends java.lang.Object
implements View

JSF-specific View implementation.

Author:
Jeremy Grelle, Phillip Webb

Field Summary
static java.lang.String EVENT_KEY
           
 
Fields inherited from interface org.springframework.webflow.execution.View
RENDER_FRAGMENTS_ATTRIBUTE, USER_EVENT_STATE_ATTRIBUTE
 
Constructor Summary
JsfView(javax.faces.component.UIViewRoot viewRoot, javax.faces.lifecycle.Lifecycle facesLifecycle, RequestContext context)
          Creates a new JSF view.
 
Method Summary
 Event getFlowEvent()
          Get the flow event the current state should handle.
 java.io.Serializable getUserEventState()
          A memento holding the results of processing a user event.
 javax.faces.component.UIViewRoot getViewRoot()
          Returns the underlying view root.
 boolean hasFlowEvent()
          True if a call to View.processUserEvent() raised a flow event the current state should handle.
 void processUserEvent()
          Executes postback-processing portions of the standard JSF lifecycle including APPLY_REQUEST_VALUES through INVOKE_APPLICATION.
 void render()
          Performs the standard duties of the JSF RENDER_RESPONSE phase.
 void saveState()
          Updates the component state stored in View scope so that it remains in sync with the updated flow execution snapshot
 void setViewRoot(javax.faces.component.UIViewRoot viewRoot)
           
 java.lang.String toString()
           
 boolean userEventQueued()
          True if there is a user event queued this view should process.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

EVENT_KEY

public static final java.lang.String EVENT_KEY
See Also:
Constant Field Values
Constructor Detail

JsfView

public JsfView(javax.faces.component.UIViewRoot viewRoot,
               javax.faces.lifecycle.Lifecycle facesLifecycle,
               RequestContext context)
Creates a new JSF view.

Parameters:
viewRoot - the view root
facesLifecycle - the flow faces lifecycle
context - the current flow request
Method Detail

getViewRoot

public javax.faces.component.UIViewRoot getViewRoot()
Returns the underlying view root.

Returns:
the view root

setViewRoot

public void setViewRoot(javax.faces.component.UIViewRoot viewRoot)

render

public void render()
            throws java.io.IOException
Performs the standard duties of the JSF RENDER_RESPONSE phase.

Specified by:
render in interface View
Throws:
java.io.IOException - if an IO Exception occured rendering the view

userEventQueued

public boolean userEventQueued()
Description copied from interface: View
True if there is a user event queued this view should process.

Specified by:
userEventQueued in interface View
Returns:
true if a user event is queued, false if not

processUserEvent

public void processUserEvent()
Executes postback-processing portions of the standard JSF lifecycle including APPLY_REQUEST_VALUES through INVOKE_APPLICATION.

Specified by:
processUserEvent in interface View
See Also:
View.hasFlowEvent()

saveState

public void saveState()
Updates the component state stored in View scope so that it remains in sync with the updated flow execution snapshot

Specified by:
saveState in interface View

getUserEventState

public java.io.Serializable getUserEventState()
Description copied from interface: View
A memento holding the results of processing a user event. Used to allow transient view state such as binding and validation errors to survive a flow execution redirect.

Specified by:
getUserEventState in interface View
Returns:
the serializable user event state object, or null if no event state needs managing
See Also:
View.processUserEvent()

hasFlowEvent

public boolean hasFlowEvent()
Description copied from interface: View
True if a call to View.processUserEvent() raised a flow event the current state should handle. Call View.getFlowEvent() to access the Event.

Specified by:
hasFlowEvent in interface View
Returns:
true if yes, false otherwise

getFlowEvent

public Event getFlowEvent()
Description copied from interface: View
Get the flow event the current state should handle. Returns an Event object when View.hasFlowEvent() returns true. Returns null otherwise.

Specified by:
getFlowEvent in interface View
Returns:
the event, or null if there is no event for the flow system to handle

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

Spring Web Flow