基于AJAX技术实现Struts校验框架(4)

http://www.sina.com.cn 2006年04月20日 15:35  天极yesky


  六、 构建Action和Action表单

  对于Struts action,我们只需把它转发到我们已经构建的JSP即可,相应的action代码具有如下类似形式:

public ActionForward execute(...) {
return mapping.findForward("success");
}

  如果输入为空,那么Action表单代码就对requiredText属性进行校验。记住,要从AjaxForm类中派生此表单类。此Action表单的validate方法看上去如下:

public ActionErrors validate(...) {
ActionErrors errors = new ActionErrors();
if (StringUtils.isEmpty(this.requiredText)) {
errors.add("requiredText", new ActionError("error.required.input"));
}
request.setAttribute(Globals.ERROR_KEY, errors);
}

  七、 应用Struts校验规则

  接下来要配置Struts校验规则,例如最小长度,最大长度,电子邮件和模式文本,等等。然后,把这些数据应用于客户端的输入对象。这一部分相应的配置类见列表4(详见所附源码)。

  八、 校验处理流程

  首先,客户端初始化XMLHTTP组件以实现对服务器的请求。然后,一旦开始构建用户激活的事件,URL的参数就被发送给服务器。在结束构建参数后,客户端将依附oneadystatechange XMLHTTP事件来听取(listen)来自服务器端的响应。在接收响应后,客户端开始分析XML校验消息并且把该消息存放到适当的地方(见图6)。

基于AJAX技术实现Struts校验框架(4)

图6.客户端处理流程

  当服务器接收请求时,它就开始检查AJAX校验的参数并且进行校验。一旦完成校验,生成的对象就被过滤到与用户输入对象相联系的特定的错误中。在过滤操作完成后,即刻生成XML消息并把该消息发送回客户端(见图7)。

基于AJAX技术实现Struts校验框架(4)

图7.服务器端处理流程

  九、 总结

  在本文中,我们构建了一个控制器,它能够接收来自客户端的异步请求并且加入Struts校验过程来生成action错误对象。在生成错误对象和XML消息(见图8和图9)之后,对于即将被校验的特定输入对象的过滤操作立即执行。

基于AJAX技术实现Struts校验框架(4)

图8.在Struts校验框架内使用AJAX实现应用程序校验测试

基于AJAX技术实现Struts校验框架(4)

图9.Struts校验框架用例

上一页 1 2 3 4 下一页

发表评论 _COUNT_条
Powered By Google
不支持Flash
·城市对话改革30年 ·新浪城市同心联动 ·诚招合作伙伴 ·企业邮箱畅通无阻
不支持Flash