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();
        }
    }

}
上一篇:Eclipse 自动生成webservice客户端java代码


下一篇:Java调用webservice接口