webservice传list问题
发布时间:2020-12-16 22:32:08 所属栏目:安全 来源:网络整理
导读:最近遇到的一个问题 返回报文中有一个ListLnPayChkCode,LnPayChkCode是一个javabean,LnPayChkCode的其中一个参数又是一个ListLnPayChkCode,这样服务端是可以正常查到数据,但是在客户端的返回报文却收不到任何东西,是null。 解决的办法是在服务端的LnPay
最近遇到的一个问题 返回报文中有一个List<LnPayChkCode>,LnPayChkCode是一个javabean,LnPayChkCode的其中一个参数又是一个List<LnPayChkCode>,这样服务端是可以正常查到数据,但是在客户端的返回报文却收不到任何东西,是null。 解决的办法是在服务端的LnPayChkCode里把list改写成LnPayChkCode javabean的数组,将二级list和一级list中的数据依次给到数组里,在返回报文中也将list参数改写成数组,这样就可以成功传到客户端了。 <span style="white-space:pre"> </span>// 将接收到的审核指标放到mobile下LnPayChkCode类型的list中 ArrayList<LnPayChkCode> list = new ArrayList<LnPayChkCode>(); for (app.creditapp.lnpay.entity.LnPayChkCode lnPayChkCode : codeList) { LnPayChkCode lpcc = new LnPayChkCode(); // 将lnPayChkCode中除了二级指标外的字段值赋到mobile下LnPayChkCode类型的lpcc中 BeanUtils.copyProperties(lpcc,lnPayChkCode); // 新建一个LnPayChkCode型的数组存放二级指标 LnPayChkCode []array = new LnPayChkCode[lnPayChkCode.getList().size()]; if (lnPayChkCode.getList() != null) { // 把二级指标从lnPayChkCode中拿出来放到array里 for (int i = 0; i < lnPayChkCode.getList().size(); i++) { array[i] = new LnPayChkCode();// 初始化变量 BeanUtils.copyProperties(array[i],lnPayChkCode .getList().get(i)); } lpcc.setCodeArray(array); } list.add(lpcc); } // 新建一个LnPayChkCode型的数组作为返回报文的参数 LnPayChkCode []arrayCodes = new LnPayChkCode[list.size()]; // 将list中的值放到LnPayChkCode的数组中 for (int i = 0; i < list.size(); i++) { arrayCodes[i] = list.get(i); } <span style="white-space:pre"> </span>toInputRspMsg.setArrayCodes(arrayCodes); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |