精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2007-06-13
struts.xml <package name="default" extends="struts-default"> ... </package> <include file="struts-admin.xml"/> struts-admin.xml <package name="admin" namespace="/admin" extends="default"> ... </package> www2 中完全没有问题的package继承配置,在 Struts 2.0.6 中如法炮制,启动时始终报错: ERROR [resin-tcp-connection-*:80-5] - Unable to find parent package default ERROR [resin-tcp-connection-*:80-5] - Unable to find parent packages default 导致 struts-admin.xml 中的所有action配置都不能生效。 反反复复查阅 struts2 的文档,始终不得其解。 ww2 -> struts2 的移植说明中,也没有提到过 这样的问题。 后来还是用 google 搜到了 apache 的 bug report,才知道确实是个bug,2.0.6 确确实实就是有package继承不能正常作用的bug。 真是郁闷之极,package继承应该是 xwork 配置 里面最基本的支持吧。庆幸的是,2.0.8 已经 fix 了,不然我还真不知道把所有的 action 配置都堆 在一个 package 里面是何其壮观。 https://issues.apache.org/struts/browse/WW-1635 struts2 到 2.0.6 都有这样的 bug,而且所有中文文档都找不到关于这个BUG 的说明,哪怕问题都没找到有人提过。 我实在怀疑 struts2 到目前为止的普及率,甚至 struts2 的 可用性。 是否还有其他一些低级的 BUG 尚未发现? 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2007-06-14
我也用的是2.06并没有你描述的这个bug!!
|
|
返回顶楼 | |
发表时间:2007-06-14
是xwork解析的bug:http://jira.opensymphony.com/browse/XW-493
临时的解决方法是调换include和package的顺序。 实际应用中,是在xwork.xml里面include了N个文件,而不是混用package和include,所以很少有机会发现这个bug |
|
返回顶楼 | |
发表时间:2007-06-14
建议最好使用Struts 2.0.8,包含XWork 2.0.3,已经非常稳定了。
BUG很少。 非Maven用户可以从http://repo1.maven.org/maven2/org/apache/struts/struts2-core/2.0.8/ 下载。 |
|
返回顶楼 | |
发表时间:2007-06-14
rasonyang 写道 建议最好使用Struts 2.0.8,包含XWork 2.0.3,已经非常稳定了。
BUG很少。 非Maven用户可以从http://repo1.maven.org/maven2/org/apache/struts/struts2-core/2.0.8/ 下载。 记得Struts 2.0.6相当于WebWork 2.2.3,而WebWork的最新版是2.2.5了,不知道Struts 2.0.8有没有同步WebWork的这些更新? |
|
返回顶楼 | |
发表时间:2007-06-14
totobacoo 写道 我实在怀疑 struts2 到目前为止的普及率,甚至 struts2 的
可用性。 是否还有其他一些低级的 BUG 尚未发现? 不管怎么样,连WebWork的开发团队都合并到Struts 2中了,Struts 2才是方向 我认为WebWork的后续版本只是维护,不会再增强了;而Struts 2开始的几个小版本可能是不太稳定,估计下一个GA会很不错~~~ |
|
返回顶楼 | |
发表时间:2007-06-14
Readonly 写道 是xwork解析的bug:http://jira.opensymphony.com/browse/XW-493
临时的解决方法是调换include和package的顺序。 实际应用中,是在xwork.xml里面include了N个文件,而不是混用package和include,所以很少有机会发现这个bug 确实是这个样子的。但是 xwork.xml 里面的 packge 在我来讲是必需的,需要自定义我的 basicStack 以及覆盖缺省 result type 之类的全局工作。 然后才是 include 其他模块配置。 所以 package 和 include 混用是很难避免的 |
|
返回顶楼 | |
发表时间:2007-06-14
totobacoo 写道 确实是这个样子的。但是 xwork.xml 里面的 packge 在我来讲是必需的,需要自定义我的 basicStack 以及覆盖缺省 result type 之类的全局工作。 然后才是 include 其他模块配置。 所以 package 和 include 混用是很难避免的 把你的default放到xxx-default.xml里面,不就可以了么? <include file="xxx-default.xml"/> <include file="struts-admin.xml"/> |
|
返回顶楼 | |
发表时间:2007-06-14
rasonyang 写道 建议最好使用Struts 2.0.8,包含XWork 2.0.3,已经非常稳定了。
BUG很少。 非Maven用户可以从http://repo1.maven.org/maven2/org/apache/struts/struts2-core/2.0.8/ 下载。 xwork2.0.3的CreateIfNull不起作用,有兴趣的可以测试一下 |
|
返回顶楼 | |
发表时间:2007-06-14
建议xwork.xml中只Include进来各个模块的配置文件,如果可以最好不要有额外的Package
|
|
返回顶楼 | |