|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
ObjectPageFlowManagedObject
FlowController
SharedFlowController
public abstract class SharedFlowController
Base "shared flow" class for controller logic, exception handlers, and state that can be shared by any number of page
flows. A shared flow is not a page flow; it is used by page flows, but never becomes the "current page flow"
(see PageFlowController for information on page flows and the "current page flow").
The class is configured through the
@Jpf.Controller annotation.
A shared flow comes into existance in one of two ways:
sharedFlowRefs
annotation attribute, or
<default-shared-flow-refs> element in
/WEB-INF/beehive-netui-config.xml declares that this shared flow will be used by all page flows in the web
application.
FlowController.remove() or through a call to PageFlowUtils.removeSharedFlow(java.lang.String, javax.servlet.http.HttpServletRequest).
Shared flow actions are defined with action methods or action annotations that determine the next URI
to be displayed, after optionally performing arbitrary logic. A page or page flow can raise a shared flow action
using the pattern "shared-flow-name.action-name". The shared
flow name is the one chosen by the page flow
in name
on @Jpf.SharedFlowRef.
A referenced shared flow gets the chance to handle any uncaught page flow exception. It declares its exception
handling through catches
on @Jpf.Controller.
Properties in the current shared flow instance can be accessed from JSP 2.0-style expressions like this one:
${sharedFlow.sharedFlowName.someProperty}.
There may only be one shared flow in any package.
PageFlowController,
Serialized Form| Field Summary |
|---|
| Fields inherited from class FlowController |
|---|
defaultLocale, servlet |
| Constructor Summary | |
|---|---|
SharedFlowController()
|
|
| Method Summary | |
|---|---|
void |
ensureFailover(HttpServletRequest request)
Ensures that any changes to this object will be replicated in a cluster (for failover), even if the replication scheme uses a change-detection algorithm that relies on HttpSession.setAttribute to be aware of changes. |
String |
getDisplayName()
Get the display name. |
String |
getModulePath()
Get the Struts module path for actions in this shared flow. |
PreviousPageInfo |
getPreviousPageInfoLegacy(PageFlowController curJpf,
HttpServletRequest request)
Deprecated. This method will be removed without replacement in a future release. |
String |
getURI()
Get the URI. |
void |
persistInSession(HttpServletRequest request,
HttpServletResponse response)
Store this object in the user session, in the appropriate place. |
void |
removeFromSession(HttpServletRequest request)
Remove this instance from the session. |
void |
savePreviousPageInfo(ActionForward forward,
ActionForm form,
ActionMapping mapping,
HttpServletRequest request,
ServletContext servletContext,
boolean isSpecialForward)
Store information about recent pages displayed. |
| Methods inherited from class PageFlowManagedObject |
|---|
fieldIsUninitialized, getCreateTime, getServletContext, initializeField, valueBound, valueUnbound |
| Methods inherited from class Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public SharedFlowController()
| Method Detail |
|---|
public String getModulePath()
getModulePath in interface ActionResolvergetModulePath in class FlowController
public void persistInSession(HttpServletRequest request,
HttpServletResponse response)
persistInSession in class PageFlowManagedObjectpublic void ensureFailover(HttpServletRequest request)
ensureFailover in class PageFlowManagedObjectrequest - the current HttpServletRequestpublic String getURI()
getURI in interface ActionResolvernull, as this object is not URL-addressible.public String getDisplayName()
getDisplayName in class PageFlowManagedObject
public PreviousPageInfo getPreviousPageInfoLegacy(PageFlowController curJpf,
HttpServletRequest request)
getPreviousPageInfoLegacy in class FlowController
public void savePreviousPageInfo(ActionForward forward,
ActionForm form,
ActionMapping mapping,
HttpServletRequest request,
ServletContext servletContext,
boolean isSpecialForward)
savePreviousPageInfo in class FlowControllerpublic void removeFromSession(HttpServletRequest request)
FlowController.remove() may be called instead.
removeFromSession in class PageFlowManagedObject
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||