java调用webservice 天气预报

时间:2022-09-29 10:56:09

http://tianqi.xixik.com/weatherip/  免费天气的插件 


public static void WeatherTest(){ 

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