ActionEventListener
一个actioneventListener可以被用作当action实例被创建或者当处理action时exception发生的时候添加一个处理逻辑。
配置
目前对于整个struts2应用只有一个ActionEventListener实例,可以通过struts.xml增加bean定义来配置:
<bean type="com.opensymphony.xwork2.ActionEventListener" class="com.demo.MyActionEventListener"/>
Examples
public class MyActionEventListener implements ActionEventListener {
public Object prepare(Object action, ValueStack stack) {
if (action instanceof MyBaseAction) {
((MyBaseAction)action).setUserService(stack.findValue("userService"));
}
}
public String handleException(Throwable t, ValueStack stack) {
if (t instanceof MyBusinessException) {
return stack.findString("defaultBusinesResult");
}
return null;
}
一个actioneventListener可以被用作当action实例被创建或者当处理action时exception发生的时候添加一个处理逻辑。
配置
目前对于整个struts2应用只有一个ActionEventListener实例,可以通过struts.xml增加bean定义来配置:
<bean type="com.opensymphony.xwork2.ActionEventListener" class="com.demo.MyActionEventListener"/>
Examples
public class MyActionEventListener implements ActionEventListener {
public Object prepare(Object action, ValueStack stack) {
if (action instanceof MyBaseAction) {
((MyBaseAction)action).setUserService(stack.findValue("userService"));
}
}
public String handleException(Throwable t, ValueStack stack) {
if (t instanceof MyBusinessException) {
return stack.findString("defaultBusinesResult");
}
return null;
}
}
翻译自http://struts.apache.org/docs/actioneventlistener.html