我用Java写了个调用天气webservice的程序,出现了错误:服务器未能识别 HTTP 头 SOAPAction 的值,调用其他的却没有这个错误。哪位高手帮我看看出了什么问题?import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
import javax.xml.namespace.QName;
public class Weather {
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();
call.setTargetEndpointAddress( new java.net.URL(endpoint) );
call.setOperationName(new QName("http://www.webxml.com.cn/", "getWeatherbyCityName"));
String ret = (String) call.invoke( new Object[] { "娄底" } );
System.out.println("天气查询结果:" + ret);
} catch (Exception e) {
System.err.println(e.toString());
}
}
}
import org.apache.axis.client.Service;
import javax.xml.namespace.QName;
public class Weather {
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();
call.setTargetEndpointAddress( new java.net.URL(endpoint) );
call.setOperationName(new QName("http://www.webxml.com.cn/", "getWeatherbyCityName"));
String ret = (String) call.invoke( new Object[] { "娄底" } );
System.out.println("天气查询结果:" + ret);
} catch (Exception e) {
System.err.println(e.toString());
}
}
}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货