Topic: some webwork2 tips(原创+资料搜集)

  Print this page

1.some webwork2 tips(原创+资料搜集) Copy to clipboard
Posted by: zcjl
Posted on: 2005-09-05 23:46

1.使用validators.xml时,如果没有连接上internet,会出现找不到dtd的异常。这个时候,把validators.xml的dtd验证去掉就行了。
参考http://jira.opensymphony.com/browse/XW-253, http://www.javaeye.com/viewtopic.php?t=12239&postdays=0&postorder=asc&start=0

2.如何在ww:iterator中取得当前对象(这个在使用webwork.util.Counter的时候很有用)?示例代码如下
<ww:iterator value="{1, 2, 3, 4}" id="aaa">
<ww:property/><br>
<ww:property value="#attr.aaa" /><br>
<ww:if test="#attr.aaa == 1">
Hello<br>
</ww:if>
</ww:iterator>

3.当form的元素名被命名为xxx.yyy的形式时,如何使用js来获取这个元素?示例如下
<input type="text" name="person.name">
<script>
alert(document.all.['person.name'].value)
</script>

4.关于Model-Driven的property name问题,纠正xiaxin的《Webwork2开发指南》一个错误(注:此为资料搜集,但忘记原出处了,抱歉)

hailwind

时间: 2005-4-20 15:07:15 标题:

--------------------------------------------------------------------------------

楼主的代码一定是从夏昕前辈的《Webwork2开发指南》上看来的吧。
在这里我斗胆指出夏昕前辈该文档中的一个错误:

引用:
Webwork2 开发指南
V1.0
Page 6-7

<input type="text" name="model.username" />
<input type="password" name="model.password" />
可以看到,两个输入框的名称均以“model”开头,这是因为在这里我们采用了WebWork
中Model-Driven的Action驱动模式。这一点稍后再做介绍。

其实这么写是没有必要的,这样写就失去了Model-Driven的优势,可以这样写:
java代码:

<input type="text" name="username" />
<input type="password" name="password" />

这样,在Action如果实现了ModelDriven的话,那么Action中的getModel方法中的那个Object就会被reflection查找setUsername与setPassword方法,并被执行这两个方法,值就是form表单的username与password的值。而如果Action没有实现ModelDriven的话,那么被reflection查找setUsername与setPassword方法的对象就是Action自己。

5.从一个Action A forward到另一个Action B的时候(Action chain),如何才能无需显式传递A中的数据到B中?(也即是:在A中处理的结果数据如何在B中自动获取):

首先,Action A中要有对应数据field的get方法,Action B中要有对应数据field的set方法
其次,在xwork.xml中,Action A的result type使用chain,Action B需要引用ActionChainingInterceptor[注]和ParameterInterceptor

【注释】:这个方法从javaeye得知(http://www.javaeye.com/viewtopic.php?t=8398),但原贴中没有说明对B引用ActionChainingInterceptor,导致了NullPointerException


   Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent
Copyright © 2002-2021 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号-1
客服电话 18559299278    客服信箱 714923@qq.com    客服QQ 714923