040903

来源:互联网 发布:软件商城下载 编辑:程序博客网 时间:2024/06/05 14:50

在捕获到异常之后还想做一些事情,可能需要前面请求的参数



捕获异常之后,想做一些事情,这需要请求参数

strutsresultSupport


cn.itcast.core.action



SysResultAction extends StrutsResultSupport



如果你需要前面传到的那些参数,request还是当次的,我这里就能把它取出来

protected void doExecute(String arg0,ActionInvocation invocation)

{

HttpServletRequest request=ServletActionContext.getRequest();

HttpServletResponse response=ServletActionContext.getResponse();

BaseAction action=invocation.getAction();

}


不同的action如何取到?

我们可以将action抽取出来



 public abstract class BaseAction extends ActionSupport {

// 选择复选框的时候传值到后台

protected String[]selectedRow;

public void setSelectedRow(String[] selectedRow) {

this.selectedRow = selectedRow;

}


public String[] getSelectedRow() {

returnselectedRow;

}

}


publicclass SysResultActionextends StrutsResultSupport{


@Override

protected void doExecute(String arg0, ActionInvocation invocation)throws Exception {

// TODO Auto-generated method stub

HttpServletRequest request=ServletActionContext.getRequest();

HttpServletResponse response=ServletActionContext.getResponse();

BaseAction action=(BaseAction) invocation.getAction();

//do sth

System.out.println("进入了SysResultAction");

}

}



public classUserAction extends BaseAction {

 



<!-- 返回结果类型 -->

<result-types>

<result-typename="error"class="cn.itcast.core.action.SysResultAction">

</result-type>

</result-types>

<!-- 全局返回结果 -->

<global-results>

<resultname="error" type="error">/WEB-INF/jsp/error.jsp</result>

<resultname="sysError">/WEB-INF/jsp/error.jsp</result>

<result name="input">/WEB-INF/jsp/error.jsp</result>

</global-results>













原创粉丝点击