2008-01-23

struts2下velocity做视图如何访问request,session等内置对象

关键字: velocity 内置对象 struts2 request
Struts2环境下用velocity做视图时访问jsp内置变量的方法。 经过研究发现,struts2条件下,velocity里访问jsp那几个内置变量,是需要写完整名字的,比如原来webwork2里的$req在struts2下要写$request 具体陈列如下: (1)访问request对象:$request; (2) 访问response对象:$response; (3) 访问session对象:$session或$request.session或$request.getSession(); (4) 访问application对象:$application(未亲自测试)
相信大家对Filter都不陌生,当你为你的web站点增加某些特殊功能时,你发现这些功能中有不少都是需要Filter来实现的,需要你在你的web.xml中配置多个功能不同的filter.我最近就在这东西上面吃了不少苦。 我的站点的运行环境是相对复杂的,web.xml里配置了不少Filter,有struts2的FilterDispatcher,有hibernate的OpenSessionInViewFilter,还有一个cas单点登陆的CASFilter(当然,还有UrlRewrite(即url地址重写的Filter),为了简化,不去理它了!),其实我是严格按照手册上来配置的,发现,我的单 ...
     我们总是需要开始,总是需要尝试,总是不断地去发现,去改进!      我只是想让struts2跑起来,很低的要求,我大约用了4个晚上的时间,菜,好菜!好多波折啊,好多辛酸!      这是一篇写给超级才鸟的文章,因此坚决不会发到论坛里去!      其实发到论坛里的动机很单纯,一个是容易被更多人看到,一个是升级为能投票的会员,行使人间的正义权利!但此篇仅仅发表在blog里,如果某天有人遇到的这样的情况(可能性很小的),可以翻阅此文 ...
     终于下定决心迁移到Struts2上来,于是去下载Struts2,在地址:http://people.apache.org/builds/struts/这里看到的最新版本是2.10,可是从地址:http://struts.apache.org/这里看到的却是2.0.11GA,如果以2.0.11为正确 的话,那2.1.0是怎么来的!大家帮小弟看下!感谢!
2007-10-24

Webwork的表单验证及其国际化

关键字: webork 验证 国际化
     最近突然用到了Webwork的验证和国际化功能,于是翻遍了所有可以翻的地方,把心得写出来给大家分享.   我用的是webwork2.2.2,不同版本之间会有细微的差别,但都是webwork2差别不会很大.先说一下Webwork的验证方式,webwork2.2有如下几种验证方式:   第一种,直接在Action代码里验证.这种方式不值得推崇,因为没法复用,同时由于数据验证代码和真正业务逻辑混在一起,使程序的可读性差,但涉及到复杂的验证,这种直接的验证方式还是有它用武之地的.   第二种,让你的Action Class继承自ActionSupport, ...
2007-09-11

Action的困惑与消息传递

关键字: Action 困惑 消息
  在实现一个个Action的时候,总是陷入困惑.因为实现ActionSupport接口的类总是非单例的,这就意味着每处理一个action请求,webwork就会生成一个该类的实例,虽然垃圾回收器的进步使性能的影响进一步减少,但如果过多的业务逻辑写到Action类里还是有可能产生大对象(这样描述可能不够确切),因为业务逻辑还是写到单例中去比较好.   这样我们就需要在Action类里引入一个(或说聚合一个)单例的操作类进来,从而,把具体的业务逻辑转移到这个单例的类里面去.但直接与视图(界面)打交道的是Action类,为了打造友好的用户界面,你将不得不在Action里写一些提示信息如, th ...
2007-09-08

Webwork Vs Struts杂谈

关键字: 杂谈 Webwork Struts
Webwork2的每个Action都是线程安全的。因为每过来一个request,它就创建一个Action对象。由于现代JDK垃圾收集功能的效率已经不成问题,所以这种创建完一个对象就扔掉的模式也得到了好多人的认可。Rod Johnson甚至以此为例证明J2EE提供的object pool功能是没多大价值的。 Struts 创建的是 Action 的单一实例,并允许多个线程调用它的 execute()。这使请求处理变得更快,因为框架处理每个请求时不用频繁地创建新的 Action 实例。但是因为可以在多个线程之间共享单一对象,所以必须遵守适当的线程注意事项,因为其他线程可能会破坏在这个动作 ...
2007-08-27

拦截机可否放置于2个result之间?

关键字: 配置 webwork 拦截
答案是“不可以”,有可能会发生问题,如: <action name="TPrettyProductGetInfo" class="dealPrettyProduct" method="getInfo"> <result name="success" type="velocity"> <param name="location">/product/editPrettyProduct.htm</param> </result> <result name="index" type="velocity"> <param ...
DavyLee
搜索本博客
最近加入圈子
存档
最新评论