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 {@link PageFlowController} for information on page flows and the "current page flow").The class is configured through the {@link org.apache.beehive.netui.pageflow.annotations.Jpf.Controller @Jpf.Controller} annotation.
A shared flow comes into existance in one of two ways:
<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. 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 {@link org.apache.beehive.netui.pageflow.annotations.Jpf.SharedFlowRef#name name}on {@link org.apache.beehive.netui.pageflow.annotations.Jpf.SharedFlowRef @Jpf.SharedFlowRef}.
A referenced shared flow gets the chance to handle any uncaught page flow exception. It declares its exception handling through {@link org.apache.beehive.netui.pageflow.annotations.Jpf.Controller#catches catches}on {@link org.apache.beehive.netui.pageflow.annotations.Jpf.Controller @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.
@see PageFlowController
|
|
|
|
|
|
|
|