ActionMapper的魔法

http://wiki.opensymphony.com/display/WW/ActionMapper

在默认的DefaultActionMapper中,利用提交的参数我们就可以做到四种魔法:

执行另外的方法

<ww:form name="baz">
    <ww:textfield label="Enter your name" name="person.name"/>
    <ww:submit value="Create person"/>
    <ww:submit name="method:anotherMethod" value="Cancel"/>
</ww:form>

执行另外一个Action

 

<ww:form name="baz">
    <ww:textfield label="Enter your name" name="person.name"/>
    <ww:submit value="Create person"/>
    <ww:submit name="action:anotherAction" value="Cancel"/>
</ww:form>

Redirect 直接转向一个网址


<ww:form name="baz">
    <ww:textfield label="Enter your name" name="person.name"/>
    <ww:submit value="Create person"/>
    <ww:submit name="redirect:www.google.com" value="Cancel"/>
</ww:form>

Redirect-action 直接转向另外一个action

 

<ww:form name="baz">
    <ww:textfield label="Enter your name" name="person.name"/>
    <ww:submit value="Create person"/>
    <ww:submit name="redirect-action:dashboard" value="Cancel"/>
</ww:form>

ActionMapperFactory

webwork的缺省ActionMpaaer是可以替换的,默认是DefautlActionMapper,还有一个可选的 RestfulActionMapper,也就是以前的CoolURL的那种方式。

利用这种机制,我们可以自己实现任意的ActionMapper来处理url,可以实现很多魔法! 例如实现无配置文件的ActionMapper

期待你来实现! 我。。。很懒 :)

posted on 2005-11-21 14:51 Scud(飞云小侠) 阅读(2389) 评论(2)  编辑  收藏 所属分类: WEB

评论

# 请教一个webwork的问题 2006-11-09 12:26 Tom

想要通过webwork+tomcat来实现网站的二级域名功能。就是用户输入一个形如***.domain.com的地址,自动redirect到一个www.domain.com/person/****的页面。其中***.domain.com中的***和www.domain.com/person/****中的****是不相同的。

web服务器是用的tomcat,所以无法用apache的mod_rewrite。

我没接触过类似的功能,没有思路来解决这个问题。能不能给点提示??

谢谢  回复  更多评论   

# re: ActionMapper的魔法 2006-11-09 17:51 scud

url rewrite   回复  更多评论   


只有注册用户登录后才能发表评论。


网站导航:
 
<2005年11月>
303112345
6789101112
13141516171819
20212223242526
27282930123
45678910

导航

统计

公告

文章发布许可
创造共用协议:署名,非商业,保持一致

我的邮件
cnscud # gmail


常用链接

留言簿(14)

随笔分类(110)

随笔档案(102)

相册

友情链接

技术网站

搜索

积分与排名

最新评论

阅读排行榜

评论排行榜