LiveBOS Webservice传参类型为list数组

Posted 星月残雪

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LiveBOS Webservice传参类型为list数组相关的知识,希望对你有一定的参考价值。

  昨天有使用soap传输数据到Webservice,其中字符串类型的都已经传输成功,但是有几个参数传输失败,java服务器端收到的空值。

  因为我是php的,然后接收端是java制作的,其中有几个参数是list数组类型的,我刚开始将php的数组传过去,服务端接收到的是空,然后再使用json格式还是不行。后来去询问java同事,他们说list数组类型不像php一样是有键值和键名的,

  java的list数组是只有name和value对应关系,如下所示

 

$arr = array(‘userid‘=>1,‘name‘=>‘张三‘,params=>arrary(array(‘name‘=>‘数组1‘,‘value‘=>‘值1‘),‘name‘=>‘数组2‘,‘value‘=>‘值2‘));

  将数组通过name和value对应关系后传输给java,java就能解析list数组进行存储。

  __soapCall返回的是object类型的数组,可以先使用json_encode,然后再json_decode进行转换,变为数组格式进行分析判断。

  到此为止,soap传输数据总算完成了。接下来就是一些细节对接问题。因为Webservice是有用户校验的,因此我需要先使用它们的登录方法进行登录,然后获取到对应的session值。为了避免不必要的重复登录步骤,因此我将此session值缓存下来,

  放入到cash目录下,然后每次传输数据时都先取然后传输,如果session过期或者无效,根据返回的code判断然后再重新登录更新session值。

以上是关于LiveBOS Webservice传参类型为list数组的主要内容,如果未能解决你的问题,请参考以下文章

java axis调用webservice,接口方法中的数组型参数应该怎么传参

php调用java写的WebService不能传参问题解决

LiveBos---批量查找组件

LiveBos---获取表格数据

LiveBos---扩展按钮调用方法

LiveBos---自定义对话框(将结果添加到表格)