package service;
import org.apache.axiom.om.OMAbstractFactory;
import org.apache.axiom.om.OMElement;
import org.apache.axiom.om.OMFactory;
import org.apache.axiom.om.OMNamespace;
import org.apache.axiom.soap.SOAP11Constants;
import org.apache.axis2.AxisFault;
import org.apache.axis2.Constants;
import org.apache.axis2.addressing.EndpointReference;
import org.apache.axis2.client.Options;
import org.apache.axis2.client.ServiceClient;
public class WeatherService {
private static void invokeWeatherInfo() {
ServiceClient sender = null;
try {
sender = new ServiceClient();
Options option = new Options();
option.setSoapVersionURI(SOAP11Constants.SOAP_ENVELOPE_NAMESPACE_URI);
option.setAction("http://WebXml.com.cn/getWeatherbyCityName");
EndpointReference epfs = new EndpointReference("http://webservice.webxml.com.cn/WebServices/WeatherWebService.asmx");
option.setTransportInProtocol(Constants.TRANSPORT_HTTP);
option.setTo(epfs);
sender.setOptions(option);
OMFactory fac = OMAbstractFactory.getOMFactory();
OMNamespace omNs = fac.createOMNamespace("http://WebXml.com.cn/", "");
OMElement data = fac.createOMElement("getWeatherbyCityName", omNs);
OMElement inner = fac.createOMElement("theCityName", omNs);
inner.setText("杭州");
data.addChild(inner);
OMElement result = sender.sendReceive(data);
System.out.println(result);
} catch (AxisFault e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public static void main(String[] args) {
// invokeTVchannel();
invokeWeatherInfo();
}
}
转载于:https://my.oschina.net/stonezing/blog/117998