首页 > 代码库 > 记录struts2 json plugin 对字符串数组类型的处理
记录struts2 json plugin 对字符串数组类型的处理
当前项目中,一开发人员在action中定义了一个字符串数组类型的属性,需要以json格式返回到页面(先不论这种设计是否最优),
结果在做页面调试时发现总是无法在ajax的success方法中获取到该属性。后台action调试发现该数组已经正确赋值,get
方法也没有问题,action相关代码如下:
private String[] traceList; private String unitName; 。。。 public String queryTrace(){ unitName = “testName”; traceList=tranManager.getTraceList(traceNO); return "queryTrace"; } 。。。 public String getUnitName() { return unitName; } public String[] getTraceList() { return traceList; }
在struts配置文件中对应的action配置添加了如下配置:
<result name="queryTrace" type="json"> <param name="includeProperties">traceList,unitName</param> </result>
在ajax的成功回调方法获取到traceList对象总是空数组,查看struts2手册发现,
struts json plugin的result中声明的includeProperties,对字符串数组或者原始类型数组的声明方式,应该如下:
<result name="queryTrace" type="json"> <param name="includeProperties">^traceList\[\d+\],unitName</param> </result>
另外还需注意一点,如果同时使用了excludeProperties和includeProperties,发生冲突时,前者优先级高于后者。
给大家个struts官方文档的 连接吧
记录struts2 json plugin 对字符串数组类型的处理
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。