Struts2之result中标准结果代码

一个result代表了一个可能的输出。当Action类的方法执行完成时,它返回一个字符串类型的路由串,框架根据这个结果码选择对应的result,向用户输出。

com.opensymphony.xwork2.Action接口中定义了一组标准的结果代码,可供开发人员使用,当然了只有我们的action继承ActionSupport
这个类才可以使用下面的结果代码
,如下所示:
public interface Action
{
    public
static final String SUCCESS = “success”;
    public
static final String NONE = “none”;
    public
static final String ERROR = “error”;
    public
static final String INPUT = “input”;
    public
static final String LOGIN = “login”;
}
      在运行过程中若发现addFieldError()中有信息或者类型转换失败或着输入校验失败等情况

那么它会自动跳转到name为input<result/>,然后转到INPUT所对应的页面

若JSP页面中表单是用普通<form>编写的,发生错误而返回该页面时,则原数据将消失

若JSP页面中表单是用<s:form/>编写的,发生错误而返回该页面时,则原数据仍存在

若没有提供name值为input的<result/>,那么发生错误时,将直接在浏览器中提示404错误

除了这些预定义的结果码外,开发人员也可以定义其它的结果码来满足自身应用程序的需
要。

时间: 2024-10-29 11:43:09

Struts2之result中标准结果代码的相关文章

Struts2的result中各种type类型以及配置文件的一些细节

Struts2支持的不同类型的返回结果为: Chain Result-->type="chain"用来处理Action链 Dispatcher Result -->type="dispatcher"用来转向页面,通常处理JSPFreeMarker Result -->type="freemarker"处理FreeMarker模板HttpHeader Result -->type="httpheader"

Struts2的配置文件中, &lt;package&gt;的作用,&lt;action&gt;&lt;result&gt;重名?

问:Struts2的配置文件中, <package>的作用是什么? 答:防止action重名啊,例如前台和后台,总会有很多地方起名重复的! 问:可是访问的时候,不也是访问action吗,能体现package的name的作用吗? 答:不同的package,你难道还要设置一样的namespace吗?! 事实胜于雄辩 1.同样的package,即name相同,namespace不同的话,会报错. 2.不同的package,namespace一样的话,就失去了包的作用,同名action会报错. 3.同

struts2在配置文件中调用Action的方法返回值

struts2在配置文件中可以调用Action的方法返回值 1.Action中 //文件下载名 public String getDownloadFileName(){ String downloadFileName = ""; String filename = fileName + ".xls"; try { downloadFileName = URLEncoder.encode(filename,"UTF-8"); } catch (Un

struts2的配置文件中的&lt;param name="allowedTypes"&gt;&lt;/param&gt;

<action name="upload" class="action.MulUpload"> <!-- 设置文件的类型 --> <interceptor-ref name="fileUpload"> <param name="allowedTypes">image/JPEG,image/JPG</param> </interceptor-ref> <

struts2在项目中的应用之下载

文件下载是一个很常见的功能,用struts2实现文件下载的步骤: 一)定义一个Action类,FileDownload.java [java] view plaincopyprint? package com.struts2.filedownload; import java.io.InputStream; import org.apache.struts2.ServletActionContext; import com.opensymphony.xwork2.ActionSupport; /

Struts2 配置文件result的name属性和type属性

Struts2 配置文件result的name属性和type属性:Name属性SUCCESS:Action正确的执行完成,返回相应的视图,success是 name属性的默认值: NONE:表示Action正确的执行完成,但并不返回任何视图: ERROR:表示Action执行失败,返回到 错误处理视图: INPUT:Action的执行,需要从前端界面获取参数,INPUT就是代表这个参数输入的界面,一般在应用中,会对这些参数进 行验证,如果验证没有通过,将自动返回到该视图: LOGIN:Actio

关于在Struts2的action中直接使用response的异步问题

如果我们项目中使用了struts2,在使用ajax和后端程序进行通讯时,我们常常为了简单采用以下的方法: ActionContext ac = ActionContext.getContext(); HttpServletResponse response = (HttpSevletResponse)ac.get(StrutsStatics.HTTP_RESPONSE); response.setContentType("text/html;charset=utf-8"); try {

[转]改善C#程序的建议4:C#中标准Dispose模式的实现

需要明确一下C#程序(或者说.NET)中的资源.简单的说来,C#中的每一个类型都代表一种资源,而资源又分为两类: 托管资源:由CLR管理分配和释放的资源,即由CLR里new出来的对象: 非托管资源:不受CLR管理的对象,windows内核对象,如文件.数据库连接.套接字.COM对象等: 毫无例外地,如果我们的类型使用到了非托管资源,或者需要显式释放的托管资源,那么,就需要让类型继承接口IDisposable.这相当于是告诉调用者,该类型是需要显式释放资源的,你需要调用我的Dispose方法. 不

【JAVA学习】struts2的action中使用session的方法

尊重版权:http://hi.baidu.com/dillisbest/item/0bdc35c0b477b853ad00efac 在Struts2里,如果需要在Action中使用session,可以通过下面两种方式得到1.通过ActionContext class中的方法getSession得到2.Action实现org.apache.struts2.interceptor.SessionAware接口的方式来对session进行操作 下面先看一个采用第一种方式,在action中得到sessi