webservice客户端如何获取服务端返回的自定义类 只看楼主 收藏 回复 wangwg_198701 水 1 GetInfoResult result = new GetInfoResult();//这个类是在客户端重新创建了一个和服务端完全一样的自定义类 t
webservice客户端如何获取服务端返回的自定义类
- 只看楼主
-
收藏
- 回复
try {
Service service = new Service();
Call call = (Call) service.createCall();
call.setReturnType(new QName(namespace, "GetInfoResult"));
call.setReturnClass(GetInfoResult.class);
call.setReturnQName(new QName(namespace, "GetInfoResult"));
call.setTargetEndpointAddress(new java.net.URL(url));
call.setUseSOAPAction(true);
call.setSOAPActionURI(soapActionURI);
call.setOperationName(new QName(namespace, methodName));
call.addParameter(new QName(namespace, "Srcid"), XMLType.XSD_STRING, ParameterMode.IN);
call.addParameter(new QName(namespace, "bDate"), XMLType.XSD_STRING, ParameterMode.IN);
call.addParameter(new QName(namespace, "Edate"), XMLType.XSD_STRING, ParameterMode.IN);
result = (GetInfoResult)call.invoke(paraObject);
}
catch (Exception e) {
e.printStackTrace();
}
报如下错误:
0 ERROR client.Call invoke.2418 - No returnType was specified to the Call object! You must call setReturnType() if you have called addParameter().
第一次接触webservice,求高手帮忙!
- 回复
- 1楼
- 2012-10-10 18:36
- 举报 |个人企业举报垃圾信息举报
- 推荐 来自 游族网络
//注册序列化和反序列化类
call.registerTypeMapping(
GetInfoResult.class,
new QName(namespace,"GetInfoResult"),
new BeanSerializerFactory(GetInfoResult.class, new QName(namespace, "GetInfoResult")),
new BeanDeserializerFactory(GetInfoResult.class, new QName(namespace, "GetInfoResult")));
在result = (GetInfoResult)call.invoke(paraObject);之前加上下面这段就可以了
回复
- 2楼
- 2012-10-10 19:46
- 举报 |个人企业举报垃圾信息举报
回复
- 4楼
- 2013-03-21 16:00
- 举报 |个人企业举报垃圾信息举报
回复
- 5楼
- 2013-03-21 16:01
- 举报 |个人企业举报垃圾信息举报