1,webWork中使用的一种通用模式:一个可选的接口,一个适用于这个接口的interception
关于validationAware:
只有把DefaultWorkFlowInterception应用于你的action时,validation自动错误验证的威力才能显现出来,在这里DefaultWorkFlowInterception做的工作是:
(1)如果action实现了Validation接口,则调用action的validation()方法;
(2)如果校验action出错,返回INPUT,否则执行action
关于Local
1.用于显示action信息文本的property文件被放到同名的action类所在包中,
例:
*.property文件中有
- user.exists=the user already exists
使用:
- public void validate(){
- .....
- addFieldError("user.username",getText("user.exists"));
- ........
- }
使用ModelDriven action
要使用这个必须做以下几步
(1)你的action实现ModelDriven这个接口
(2)用getModel()方法取代getUser()
(3)在jsp中不用通过use.*来访问域对象的值,直接用属性就可以访问
用种方法的时候应该注意一点,不应该在请求过程中改变getModel()返回的值,也就是说在execute()方法中不应该再把指向getModel()返回对象的引用,指向别的对象
通过ActionContext返回数据
通过调用ActionContext.getContext()可以返回一个ActionContext的实例对象,这个对象是ThreadLocal的,然后可以用这个实例去调用它的一些方法,如:getSession()之类的,书上用这种方法来访问session不好,应该用别一种方法(如下)
如果要用到session的话,让你的action实现SessionAware这个接口,例:
- public class Login extends ActionSupport implements com.opensymphony.webwork.interceptor.SessionAware,UserDAOAare{
- Map session;
- User user;
- public void setSession(Map session)
- {
- this.session=session;
- }
- publin String execute() throws Exception {
- session.*
- }
-
- }
访问request和response
也是有两种方法:
(1)
- HttpServletRequest req=ServletActionContext.getRequest();
(2)实现ServletRequestAware接口
分享到:
相关推荐
webwork in action 第一部分:概貌 第二部分:核心内容 第三部分:内容的显示 第四部分:高级话题
webwork in action 书籍 源代码
webwork in action
webwork in action 中文版
webwork in action 中文版
webwork in action 中文版
Webwork in action
webwork in action 的中文版,影印,高清晰,本人阅读中。非常不错。文件太大了,分了 15个压缩文件。每个文件1分。
真正的webwork in Action中文清晰完整版,还附有书上的示例代码,不同于其它的章节摘录版,模糊版,英文版...学习webwork的最佳教材
webwork in action 电子书
第一部分:webwork 简介 第二部分: 核心概念 第三部分:内容显示 第四部分:高级话题
webwork in action 第一部分:概貌 第二部分:核心内容 第三部分:内容的显示 第四部分:高级话题
webwork in action_第1部分-WebWork简介_第2章-WebWork方式的Hello World
Webwork.in.action最新中文版
in action系列想必同行人士都是知道的,相当的好,请大家下载来看,可以说得上是webwork的权威了
webwork.in.action中文pdf版 part5
webwork in action.(pdf &&代码)
webwork.in.action中文版 pdf版本