java调用webservice之后的数据处理
如下是我调用的手机号码归属地查询的公告API接口,我把wsdl转化成了java类,利用这个类来实现功能,下面是客户端代码publicArrayOfStringquery(...
如下是我调用的手机号码归属地查询的公告API接口,我把wsdl转化成了java类,利用这个类来实现功能,下面是客户端代码
public ArrayOfString query(String phone) throws RemoteException {
MobileCodeWSStub stub = new MobileCodeWSStub();
MobileCodeWSStub.GetMobileCodeInfo gmc = new MobileCodeWSStub.GetMobileCodeInfo();
MobileCodeWSStub.GetDatabaseInfo gdb = new MobileCodeWSStub.GetDatabaseInfo();
MobileCodeWSStub.ArrayOfString aos = new MobileCodeWSStub.ArrayOfString();
gmc.setMobileCode(phone);
aos = stub.getDatabaseInfo(gdb).getGetDatabaseInfoResult();
return aos;
}
我在servlet中调用这个方法,但是它的返回值是发布这个webservice得机构定的,是ArrayOfString ,那我怎么样转化成json格式,输出到jsp页面呢? 展开
public ArrayOfString query(String phone) throws RemoteException {
MobileCodeWSStub stub = new MobileCodeWSStub();
MobileCodeWSStub.GetMobileCodeInfo gmc = new MobileCodeWSStub.GetMobileCodeInfo();
MobileCodeWSStub.GetDatabaseInfo gdb = new MobileCodeWSStub.GetDatabaseInfo();
MobileCodeWSStub.ArrayOfString aos = new MobileCodeWSStub.ArrayOfString();
gmc.setMobileCode(phone);
aos = stub.getDatabaseInfo(gdb).getGetDatabaseInfoResult();
return aos;
}
我在servlet中调用这个方法,但是它的返回值是发布这个webservice得机构定的,是ArrayOfString ,那我怎么样转化成json格式,输出到jsp页面呢? 展开
3个回答
展开全部
WebService返回的数据都是Object[]类型的,ArrayOfString也是ArrayOfObject的子类,所以呢,你必须解析出来,比如它定义了返回数据格式是:号码,地区,邮编
那你做循环分别吧aos[0],aos[1],aos[2]拿出来,构成一个新的实体对象,在利用JSONArray.fromObject(Object)来转换成json串,如果返回了多条记录 就把实体对象加到list里面,JSONArray.fromObject(list)来转成json串
希望能帮到你~
那你做循环分别吧aos[0],aos[1],aos[2]拿出来,构成一个新的实体对象,在利用JSONArray.fromObject(Object)来转换成json串,如果返回了多条记录 就把实体对象加到list里面,JSONArray.fromObject(list)来转成json串
希望能帮到你~
展开全部
是的,如果你需要自己的格式。 你只需读取并解析 ws 返回的数据,再序列化成你自己想要的格式即可!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
把ArrayOfString中的数据取出,封装到list中,json有方法直接把list转成json格式的数据JSONArray.fromObject(list),把这个jsonArray返回前台就可以调用了
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询