xiaoliouc 2012-09-07 11:16
浏览 176
已采纳

struts-plugin插件包的问题

用ssh框架也有将近1个月了,现在有一些疑问,希望高手帮我解决一下。主要是struts-plugin插件的问题。

下载struts2.3.4.1完整包,里面有大量的插件包,这些包我也或多或少的使用过,但当初都是分开使用的,没使用struts2.比如sitemesh,json等。但我现在的问题是,如果我使用struts2-json-plugin的时候,是不是就不需要json包了。我看网上很多的做法,也有引入了的,但一些人的做法,就没有引入。我现在就迷惑了。
还有版本问题,是不是struts2.3.4就必须用struts2.3.4-plugin版本匹配的插件。
最后就是一个问题,我以前编写struts2代码都是对所有的url进行拦截,请求action也没有后缀,比如showNews,不是showNews.action。现在问题来了,当我使用fckeditor的时候,单独使用都没什么问题,但文件上传就出现权限不够。原因我知道。我用网上他们说的方法重新写一个filter来拦截这个请求,但还是没解决。如果把url拦截改成*.action也不行,因为我的action全部没后缀。

希望能得到解答一下。

  • 写回答

4条回答 默认 最新

  • jinnianshilongnian 2012-09-07 11:51
    关注

    1、struts2配置加载顺序
    1.1、struts-core里的 struts-default.xml-------------->提供默认配置 比如默认的Result、more的拦截器等
    1.2、struts plugin里的 struts-plugin.xml ------------->提供插件需要的配置,比如spring插件 会修改struts.objectFactory 为spring(org.apache.struts2.spring.StrutsSpringObjectFactory)
    1.3、加载classpath中的我们自定义的struts.xml

    struts plugin 提供给我们扩展struts2的功能,比如使用spring容器管理struts2组件(默认struts2也是一个IoC容器)、提供json插件 方便序列化数据为json字符串等。

    比如你使用spring这个插件,这个插件是依赖spring的,因此就需要spring的jar包; 相当于你间接依赖spring包;

    比如你使用json这个插件,这个插件是依赖json-lib等jar包,因此就需要json-lib等jar包; 相当于你间接依赖json-lib等jar包;

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
  • surelei 2012-09-07 11:22
    关注

    1.json包需要的
    2.建议使用maven构建项目,自动管理包的依赖关系。
    3.为什么不把所有action加上后缀呢?

    评论
  • iteye_5246 2012-09-07 11:37
    关注

    import net.sf.json.JSONObject;
    一般在早期版本如果希望返回json,使用的jar命名空间是上面那个
    但在使用struts2-json-plugin 导入命名控件不一样了
    import com.googlecode.jsonplugin.annotations.JSON;
    2个包都能方便产生json格式是字符串
    如果使用了 注解形式的
    也就是action中
    @JSON(name="newName")
    public String getName() {}那么需要struts2-json-plugin
    如果有方法就是早期版本的json,
    例如:
    public String demo()
    {
    //response.write(json);
    return null;//
    }
    这2中方式都能实现json,看个人爱好,并不能说使用了用struts2-json-plugin
    就不需要第三方的json包了
    这个看个人编码习惯,比如:团队中返回json的方法,有些老程序员,就直接用老版本的,或者用新版本的,2中都能实现返回json的action,只不过看个人编码习惯而已。
    对于楼上action不加后缀,貌似struts常量配置里面可以配置拦截什么后缀的请求。

    评论
  • iteye_5246 2012-09-07 11:39
    关注

    这个就相当于struts2,spring。hibernate,都提供了2中配置方式
    1.注解,2.xml形式,2中都能配置,但如果需要注解就需要导入额外的包,但可以2个混着用,既有配置文件,又有注解。。
    希望能你能明白

    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 java 这种树形框吗
  • ¥40 找同学帮敲Python代码
  • ¥15 MYSQL 订单的商品明细重复计算问题
  • ¥15 微信实时共享位置修改
  • ¥100 TG的session协议号转成直登号号后客户端登录几分钟后自动退出设备
  • ¥50 共模反馈回路的小信号增益
  • ¥15 arduino ssd1306函数与tone函数放歌代码不兼容问题
  • ¥70 0.96版本hbase的row_key里含有双引号,无法deleteall
  • ¥15 诊断性META分析合并效能的检验
  • ¥15 请问abb根据色块判断奇偶数并根据批次号放入仓储