plugin 插件,Json返回List对象数据为空解决方案

今天的项目的时候需要服务器通过返回Json对象传递数据,Json中的数据是一个List对象,List中是一堆自定义Message对象。但是在返回的时候接收到的却是空数据.

浏览器返回结果{"result":[]}

返回的List中肯定是有数据的,后台测试list的长度大于1。

struts2.xml中的配置为(这里的result为action中指定的list返回结果)

<!– 获取所有种类 –><action name="getAllVarietiesAction" class="com.hcj.action.database.GetAllVarietiesAction"><result type="json" name="success"><!– 这里指定将序列化list中的那些属性 –><param name="includeProperties"><span style="color:#ff0000;">result</span></param></result> </action>action中为

package com.hcj.action.database;import java.util.List;import com.hcj.model.User;import com.hcj.service.UserService;import com.opensymphony.xwork2.ActionContext;import com.opensymphony.xwork2.ActionSupport;//获取所有public class GetAllVarietiesAction extends ActionSupport {private UserService userService;private List<String> result;public List<String> getResult() {return result;}public void setResult(List<String> result) {this.result = result;}public UserService getUserService() {return userService;}public void setUserService(UserService userService) {this.userService = userService;}@Overridepublic String execute() throws Exception {result = userService.getAllVarieties();System.out.println("查询结果为" + result.get(1));return SUCCESS;}}后查询了资料后,,只要将strut2.xml做如下修改就可得到正确结果

<!– 获取所有种类 –> <action name="getAllVarietiesAction" class="com.hcj.action.database.GetAllVarietiesAction"><result type="json" name="success"><span style="white-space:pre"></span> <!– 这里指定将序列化list中的那些属性 –><span style="white-space:pre"></span> <param name="includeProperties"><span style="color:#ff0000;">result.*</span></param><span style="white-space:pre"></span></result> </action>最终浏览器返回结果为

{"result":["puer_tea","green_tea"]}

最重要的是今天的心。

plugin 插件,Json返回List对象数据为空解决方案

相关文章:

你感兴趣的文章:

标签云: