6.! Action 的 execute()方法返回一个 ActionForward 对象,ActionServlet
再把客户请求转发给 ActionForward 对象指向的 JSP 组件。
7.! ActionForward 对象指向的 JSP 组件生成动态页面,返回给客户。
对于以上流程的步骤(4),如果 ActionForm 的 validate()方法返回一个包
含一个或多个 ActionError 的 ActionErrors 对象,就表示表单验证失败,此时
ActionServlet 将直接把请求转发给包含客户提交表单的 JSP 组件。在这种情
况下,不会再创建 Action 对象并调用 Action 的 execute 方法。
!
3 Struts 框架的数据验证可分为几种类型?
答案:
表单验证(由 ActionForm Bean 处理):如果用户没有在表单中输入姓名,
就提交表单,将生成表单验证错误
业务逻辑验证(由 Action 处理):如果用户在表单中输入的姓名为
“Monster”,按照本应用的业务规则,不允许向“Monster”打招呼,因此将生
成业务逻辑错误。
4 简述 Form Bean 的表单验证流程。
答案:
1、当用户提交了 HTML 表单,Struts 框架自动把表单数据组装到
ActionForm Bean 中。
2、接下来 Struts 框架会调用 ActionForm Bean 的 validate()方法进行表单
验证。
3、如果 validate()方法返回的 ActionErrors 对象为 null,或者不包含任何
ActionMessage 对象,就表示没有错误,数据验证通过。
4、如果 ActionErrors 中包含 ActionMessage 对象,就表示发生了验证错误,
Struts 框架会把 ActionErrors 对象保存到 request 范围内,然后把请求转发
到恰当的视图组件,视图组件通过<html:errors>标签把 request 范围内的
ActionErrors 对象中包含的错误消息显示出来,提示用户修改错误。
5 在 struts 配置文件中 action 元素包含哪些属性和子元素?
答案:
评论0
最新资源