在开发webservice的时候,无意会涉及到服务端和客户端。
这里通过调用QQ在线状态的webservice来演示客户端的调用。
其中客户端的调用一般有同步调用和异步调用。
webservice地址:http://www.webxml.com.cn/webservices/qqOnlineWebService.asmx ?wsdl
用wsdl2java命令(相关配置可以参看我的另一篇帖子):
C:\>wsdl2java -o C:\service -uri http://www.webxml.com.cn/webservices/qqOnlineWe
bService.asmx?wsdl -p demo.service
这样在C:\service\下就生成了客户端相关的类:
QqOnlineWebServiceCallbackHandler.java
QqOnlineWebServiceStub.java
将这两个类copy到你的项目文件中。包名改为你的包名,或者在命令生成的时候,将-p 后加入你的包名。
代码
public class CheckQQOnlineClient {
public static void main(String[] args) throws Exception{
QqOnlineWebServiceStub stub = new QqOnlineWebServiceStub();
QqOnlineWebServiceStub.QqCheckOnline online = new QqOnlineWebServiceStub.QqCheckOnline();
online.setQqCode("799517244");
QqOnlineWebServiceStub.QqCheckOnlineResponse response = stub.qqCheckOnline(online);
String result = response.getQqCheckOnlineResult();
System.out.println("result:"+result);
}
}
返回说明:
返回数据: String
返回值:Y = 在线; N = 离线; E = QQ 号码错误; A = 商业用户验证失败; V = 免费用户超过数量