浏览 721 次
|
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
|---|---|
| 作者 | 正文 |
|
时间:2008-04-17 关键字: struts2 plugin
在Struts2中的某些Plugin的使用是需要继承Plugin中的struts-plugin.xml中定义的package的,比如在JsonPlugin中,如果使用就需要继承如下定义的package:json-default
<package name="json-default" extends="struts-default">
<result-types>
<result-type name="json" class="com.googlecode.jsonplugin.JSONResult"/>
</result-types>
<interceptors>
<interceptor name="json" class="com.googlecode.jsonplugin.JSONInterceptor"/>
</interceptors>
</package>
如果使用AjaxFileUpload的plugin的话就需要继承如下的package:ajaxfileupload-default <package name="ajaxfileupload-default" extends="struts-default"> <result-types> <result-type name="rawtext" class="com.davidjc.ajaxfileupload.result.RawTextResult"/> </result-types> action name="uploadprogress" class="com.davidjc.ajaxfileupload.action.UploadProgress"> <result name="success" type="rawtext"/> </action> </package> 我的问题是,如果我的一个package同时需要这两个plugin的时候,我应该怎么来写我自己的package?好像没法同时继承两个吧? 声明:JavaEye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
|
|
| 返回顶楼 | |
|
时间:2008-04-17
不同的package只是提供了一些默认的result-types, inteceptors设置而已,你完全可以自己把这2个package里面的这些设置复制到你的package下。
|
|
| 返回顶楼 | |
|
时间:2008-04-17
Readonly那种做法,应该从代码级是可以的,但是感觉这就似乎破坏了plugin的意义,变成不可插拔的插件了,所以我觉得从架构级似乎有点问题,如果plugin出了新的版本还需要更新自己的代码,这也是个问题。
|
|
| 返回顶楼 | |
|
时间:2008-04-17
你不妨写一个issue给struts2开发团队,允许extends里面可以逗号分割使用多个plugin定义的package
|
|
| 返回顶楼 | |
|
时间:2008-04-18
把action的classs配到spring里面
不用类型的action放到对应的package下 这样一个action可以用不同的名字发布在多个package下 |
|
| 返回顶楼 | |
|
时间:2008-04-20
研究了源代码,分析结果在我的Blog里
http://hi.baidu.com/chinastruts/blog/item/aaf06e0e73c374e237d12260.html |
|
| 返回顶楼 | |
|
时间:2008-04-21
Readonly 写道 你不妨写一个issue给struts2开发团队,允许extends里面可以逗号分割使用多个plugin定义的package
Readonly的回复很有技巧啊~~~ |
|
| 返回顶楼 | |
|
时间:2008-04-21
<package name="ajaxfileupload-default" extends="json-default">
这就行了 |
|
| 返回顶楼 | |







