首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Web开发 >

关于struts2返回多个json解决方法

2012-04-13 
关于struts2返回多个json有Result对象Java codeprivate boolean flag falseprivate String msg 未开

关于struts2返回多个json
有Result对象

Java code
private boolean flag = false;private String msg = "未开始";//getter 和 setter 构造之类全有

action中
Java code
private List<Result> detail;private Result success;public String importOrder() {            detail = service.importOrderByOrderIDs(ids, this.getOperatorUserId());    success = new Result(true,"订单导入 完成!");        return "success";


struts.xml中
Java code
<package name="testcard_ajax" extends="json-default" namespace="/testcard_ajax">        <action name="testcard_*" class="com.aspire.web.testcardinfo.action.TestCardInfoAction"  method="{1}">        <result name="success" type="json">                <param name="includeProperties">                    detail,success                </param>                     </result>        </action>    </package>

Ajax 得到的返回消息
Java code
$.ajax({          type: 'POST',          url: "/ec_web/testcard_ajax/testcard_importOrder.do",          data:{"importOrderIdStr":ids.toString(),ajax:true },          success: function(jsonss){              var flag = jsonss.success.flag; //断点1                      var title=jsonss.success.msg;                      var results = jsonss.detail;          }        });


返回的json中,里边有success对象,但success对象是空.
返回的json中,里边有detail对象,但是detail对象也是空

我在js中,断点1的位置加断点
jsonss.success:null;
jsonss.detail:null

为啥子只有名字返回了,里边的对象没有?

[解决办法]
jsonss这个是不是空的?
[解决办法]
Java code
<param name="includeProperties">                    detail,success                </param>
[解决办法]
我在项目中是这样配置的:
Java code
<!-- 驗證 角色代碼是否存在  -->        <action name="validateRoleCode" class="roleAction" method="validateRoleCode">            <result type="json">                <param name="includeProperties">status</param>            </result><!--这里的status只是一个String -->        </action>                <action name="getUserCodeForRoleCreate" class="roleAction" method="getUserCodeForRoleCreate">            <result type="json">                <param name="includeProperties">userList.*</param>            </result><!--这里的userList装的是一个user对象-->        </action>
[解决办法]
<param name="includeProperties">
detail,success
</param>
把这个改下。 
<param name="aa"> detail </param>
<param name="dd"> success</param>
在回调函数中直接用jsonss.aa就是detail 。 jsonss.dd就是success ,
[解决办法]
Java code
private List<Result> detail;private Result success; 


[解决办法]
<param name="includeProperties">
detail,success
</param>
detail和success不要写在一起,分开来写

热点排行