首页 > 代码库 > Axis1.4 调用 Asp.Net 服务简单示例

Axis1.4 调用 Asp.Net 服务简单示例

  axis全称Apache EXtensible Interaction System.版本很多,axis1.x版本最终版是 1.4,之后就到了axis2.x;由于2.x 版本与 1.x版本使用起来的差异比较大(当然2.x版本相对来说会高效很多)。

  这里以访问QQ号码状态为例,webservice地址:http://webservice.webxml.com.cn/webservices/qqOnlineWebService.asmx?wsdl ,在浏览器中访问可看到相关的请求头信息、函数名称、参数等。

  Java项目中需要用到的Jar包(放在lib目录下):
  

  需要引用的类:
    import javax.xml.namespace.QName;
    import javax.xml.rpc.ServiceException;
    import org.apache.axis.client.Call;
    import org.apache.axis.client.Service;

  最后是调用代码:

 1         try { 2          3             String endpoint = "http://webservice.webxml.com.cn/webservices/qqOnlineWebService.asmx?wsdl";  4  5             //创建一个服务(service)调用(call)  6             Service service = new Service();  7             Call call = (Call) service.createCall(); 8              9             //设置service所在的url 10             call.setTargetEndpointAddress(new java.net.URL(endpoint)); 11             12             //接口函数13             call.setOperationName(new QName("http://WebXml.com.cn/","qqCheckOnline"));  14             call.setSOAPActionURI("http://WebXml.com.cn/qqCheckOnline");15             16             //接口的参数17             call.addParameter(new QName("http://WebXml.com.cn/","qqCode"), org.apache.axis.encoding.XMLType.XSD_STRING,javax.xml.rpc.ParameterMode.IN);18             19             //设置返回类型20             call.setReturnType(org.apache.axis.encoding.XMLType.XSD_STRING); 21             22             String ret = (String)call.invoke(new Object[]{"997717740"}); 23             24             System.out.println("状态:"+ret);25         26         }27         28         catch(Exception e) {29             BeanCtx.p(e.toString());30         }

 

  

  

Axis1.4 调用 Asp.Net 服务简单示例