|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.opensymphony.webwork.interceptor.MessageStoreInterceptor
public class MessageStoreInterceptor
An interceptor to store ValidationAware
action's messages / errors and field errors into
Http Session, such that it will be retrieveable at a later stage. This allows the action's message /
errors and field errors to be available longer that just the particular http request.
ValidationAware
action's message / errors
and field errors into Http session.
In the 'RETRIEVE' mode, the interceptor will retrieve the stored action's message / errors and field
errors and put them back into the ValidationAware
action.
The interceptor does nothing in the 'NONE' mode, which is the default.
The operation mode could be switched using :-
1] Setting the iterceptor parameter eg.
<action name="submitApplication" ...> <interceptor-ref name="store"> <param name="operationMode">l;STORE</param> </interceptor-ref> <interceptor-ref name="defaultStack" /> .... </action>2] Through request parameter (allowRequestParameterSwitch must be 'true' which is the default)
// the request will have the operation mode in 'STORE' http://localhost:8080/context/submitApplication.action?operationMode=STORE
<action name="submitApplication" ....> <interceptor-ref name="store"> <param name="operationMode">STORE</param> </interceptor-ref> <interceptor-ref name="defaultStack" /> <result name="input" type="redirect">applicationFailed.action</result> <result type="dispatcher">applicationSuccess.jsp</result> </action> <action name="applicationFailed" ....> <interceptor-ref name="store"> <param name="operationMode">RETRIEVE</param> </interceptor-ref> <-- this result will get executed if its field/error message(s) --> <result name="input">applicationFailed.jsp</result> <-- this result will get executed if its action message(s) --> <result>applicationFailed.jsp</result> </action>With the example above, 'submitApplication.action' will have the action messages / errors / field errors stored in the Http Session. Later when needed, (in this case, when 'applicationFailed.action' is fired, it will get the action messages / errors / field errors stored in the Http Session and put them back into the action.
Field Summary | |
---|---|
static String |
actionErrorsSessionKey
|
static String |
actionMessagesSessionKey
|
static String |
fieldErrorsSessionKey
|
static String |
NONE
|
static String |
RETRIEVE_MODE
|
static String |
STORE_MODE
|
Constructor Summary | |
---|---|
MessageStoreInterceptor()
|
Method Summary | |
---|---|
protected void |
after(ActionInvocation invocation,
String result)
Handle the storing of field errors / action messages / field errors, which is done after action invocation, and the operationMode is in 'STORE'. |
protected void |
before(ActionInvocation invocation)
Handle the retrieving of field errors / action messages / field errors, which is done before action invocation, and the operationMode is 'RETRIEVE'. |
void |
destroy()
No operation. |
boolean |
getAllowRequestParameterSwitch()
Returns true if the request parameter (default to operationMode) is used to decide which mode this interceptor should operates in. |
String |
getOperationModel()
Returns the operation mode this interceptor is operating in (valid values are) STORE RETRIEVE NONE (this is the default) |
protected String |
getRequestOperationMode(ActionInvocation invocation)
Get the operationMode through request paramter, if allowRequestParameterSwitch
is 'true', else it simply returns 'NONE', meaning its neither in the 'STORE_MODE' nor
'RETRIEVE_MODE'. |
String |
getRequestParameterSwitch()
Returns the request parameter string that is used to determine the mode this interceptor should operatoes in. |
void |
init()
No operatio9n. |
String |
intercept(ActionInvocation invocation)
Intercept the incomming request and store messages into HttpSession / retrieve messages from HttpSession / do nothing depending on the mode this interceptor is operating in. |
protected Collection |
mergeCollection(Collection col1,
Collection col2)
Merge col1 and col2 and return the composite
Collection . |
protected Map |
mergeMap(Map map1,
Map map2)
Merge map1 and map2 and return the composite
Map |
void |
setAllowRequestParameterSwitch(boolean allowRequestParameterSwitch)
If true allows request parameter (default to operationMode) to decide which mode this interceptor should operates in. |
void |
setOperationMode(String operationMode)
Set the operation mode this interceptor is operating in (valid values are) STORE RETRIEVE NONE (this is the default) |
void |
setRequestParameterSwitch(String requestParameterSwitch)
Set the request parameter string that is used to determine the mode this interceptor should operates in . |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final String STORE_MODE
public static final String RETRIEVE_MODE
public static final String NONE
public static String fieldErrorsSessionKey
public static String actionErrorsSessionKey
public static String actionMessagesSessionKey
Constructor Detail |
---|
public MessageStoreInterceptor()
Method Detail |
---|
public void setAllowRequestParameterSwitch(boolean allowRequestParameterSwitch)
allowRequestParameterSwitch
- public boolean getAllowRequestParameterSwitch()
public void setRequestParameterSwitch(String requestParameterSwitch)
requestParameterSwitch
- #setRequestParameterSwitch}
public String getRequestParameterSwitch()
#setRequestParameterSwitch}
public void setOperationMode(String operationMode)
operationMode
- public String getOperationModel()
public void destroy()
destroy
in interface Interceptor
public void init()
init
in interface Interceptor
public String intercept(ActionInvocation invocation) throws Exception
intercept
in interface Interceptor
Exception
- any system-level error, as defined in Action.execute()
.protected void before(ActionInvocation invocation) throws Exception
operationMode
is 'RETRIEVE'.
invocation
-
Exception
protected void after(ActionInvocation invocation, String result) throws Exception
operationMode
is in 'STORE'.
invocation
- result
-
Exception
protected String getRequestOperationMode(ActionInvocation invocation)
allowRequestParameterSwitch
is 'true', else it simply returns 'NONE', meaning its neither in the 'STORE_MODE' nor
'RETRIEVE_MODE'.
protected Collection mergeCollection(Collection col1, Collection col2)
col1
and col2
and return the composite
Collection
.
col1
- col2
-
protected Map mergeMap(Map map1, Map map2)
map1
and map2
and return the composite
Map
map1
- map2
-
|
WebWork Project Page | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |