记录struts2 json plugin 对字符串数组类型的处理

本文通过一个具体的案例详细介绍了Struts2框架中JSON插件的使用方法及注意事项,特别是针对字符串数组的序列化配置进行了深入探讨。

    当前项目中,一开发人员在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官方文档的 连接







转载于:https://my.oschina.net/jawava/blog/342793

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值