Java调用webservice 天气预报

import org.apache.axis.client.Call;
import org.apache.axis.client.Service;

import javax.xml.namespace.QName;
import java.util.Vector;


public class WeatherReport {
    public static void main(String[] args) {
        try {

            String endpoint = "http://www.webxml.com.cn/WebServices/WeatherWebService.asmx?wsdl";
            Service service = new Service();
            Call call = (Call) service.createCall();// 通过service创建call对象

            // 设置service所在URL

            call.setTargetEndpointAddress(new java.net.URL(endpoint));

            call.setOperationName(new QName("http://WebXml.com.cn/", "getWeatherbyCityName"));
            call.addParameter(new QName("http://WebXml.com.cn/", "theCityName"), org.apache.axis.encoding.XMLType.XSD_STRING, javax.xml.rpc.ParameterMode.IN);

            call.setUseSOAPAction(true);

            call.setReturnType(org.apache.axis.encoding.XMLType.SOAP_VECTOR); //返回参数的类型(不能用Array,否则报错)

            call.setSOAPActionURI("http://WebXml.com.cn/getWeatherbyCityName");

            Vector ret = (Vector) call.invoke(new Object[]{"大庆"});

            System.out.println("--------" + ret);

        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }

}
-------------------------------------------------------------------------
## 极客时间全网最便宜最优惠购买方式,优惠券返现 百度网盘 微信关注公众号“选门好课”
扫描下方二维码关注我的公众号"选门好课",与我一起交流知识
原文地址:https://www.cnblogs.com/singworld/p/14828442.html