webservice 教程学习系列(七)——编写天气预报和手机号码归属地的webservice

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u012045045/article/details/84201955

1.编写天气预报的webservice

首先我们在http://www.webxml.com.cn/zh_cn/index.aspx里面找到天气预报的url

然后找到获取地区天气的接口方法:

看到方法函数

得到URL链接:

然后在浏览器中输入该URL:http://ws.webxml.com.cn/WebServices/WeatherWS.asmx?wsdl

得到约束文本信息:

然后新建java工程,在src下的dos窗口中解析url链接

会发现解析出错:

原因是因为该webservice的server端是使用.net开发的,而我们是使用java的clien端调用的。

所以解决方法是,将该约束文件保存为本地的WSDL文本文件,然后将其中所有的<s:element ref="s:schema" />  <s:any />替换成<s:any minOccurs="2" maxOccurs="2"/>即可。

贴一下report.wsdl的源码

<?xml version="1.0" encoding="utf-8"?>
<wsdl:definitions xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
	xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
	xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:tns="http://WebXml.com.cn/"
	xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/"
	xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" targetNamespace="http://WebXml.com.cn/"
	xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
	<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">&lt;a
		href="http://www.webxml.com.cn/"
		target="_blank"&gt;WebXml.com.cn&lt;/a&gt;
		&lt;strong&gt;2400多个城市天气预报Web服务&lt;/strong&gt;,包含2300个以上中国城市和100个以上国外城市天气预报数据。数据每2.5小时左右自动更新一次,准确可靠。&lt;br
		/&gt;使用本站 WEB 服务请注明或链接本站:&lt;a href="http://www.webxml.com.cn/"
		target="_blank"&gt;http://www.webxml.com.cn/&lt;/a&gt; 感谢大家的支持!&lt;br
		/&gt;&lt;br /&gt;&lt;img alt="PDF" title="PDF file"
		src="http://www.webxml.com.cn/images/icon/pdf.gif"
		style="vertical-align: middle;" /&gt; &lt;a
		href="http://www.webxml.com.cn/files/WeatherWsHelp.pdf"
		target="_blank"&gt;接口帮助文档&lt;/a&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;
		&lt;img alt="ZIP" title="ZIP file"
		src="http://www.webxml.com.cn/images/icon/zip.gif"
		style="vertical-align: middle;" /&gt; &lt;a
		href="http://www.webxml.com.cn/files/about_city.zip"&gt;部分城市介绍和气候背景&lt;/a&gt;
		&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;img alt="ZIP" title="ZIP file"
		src="http://www.webxml.com.cn/images/icon/zip.gif"
		style="vertical-align: middle;" /&gt; &lt;a
		href="http://www.webxml.com.cn/files/city_photo.zip"&gt;部分城市图片&lt;/a&gt;
		&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;img alt="HTML" title="HTML file"
		src="http://www.webxml.com.cn/images/icon/html.gif"
		style="vertical-align: middle;" /&gt; &lt;a
		href="http://www.webxml.com.cn/zh_cn/weather_icon.aspx"
		target="_blank"&gt;天气现象和图例&lt;/a&gt;&lt;br /&gt;&amp;nbsp;
	</wsdl:documentation>
	<wsdl:types>
		<s:schema elementFormDefault="qualified" targetNamespace="http://WebXml.com.cn/">
			<s:element name="getRegionDataset">
				<s:complexType />
			</s:element>
			<s:element name="getRegionDatasetResponse">
				<s:complexType>
					<s:sequence>
						<s:element minOccurs="0" maxOccurs="1"
							name="getRegionDatasetResult">
							<s:complexType>
								<s:sequence>
									<s:any minOccurs="2" maxOccurs="2"/>
								</s:sequence>
							</s:complexType>
						</s:element>
					</s:sequence>
				</s:complexType>
			</s:element>
			<s:element name="getRegionProvince">
				<s:complexType />
			</s:element>
			<s:element name="getRegionProvinceResponse">
				<s:complexType>
					<s:sequence>
						<s:element minOccurs="0" maxOccurs="1"
							name="getRegionProvinceResult" type="tns:ArrayOfString" />
					</s:sequence>
				</s:complexType>
			</s:element>
			<s:complexType name="ArrayOfString">
				<s:sequence>
					<s:element minOccurs="0" maxOccurs="unbounded" name="string"
						nillable="true" type="s:string" />
				</s:sequence>
			</s:complexType>
			<s:element name="getRegionCountry">
				<s:complexType />
			</s:element>
			<s:element name="getRegionCountryResponse">
				<s:complexType>
					<s:sequence>
						<s:element minOccurs="0" maxOccurs="1"
							name="getRegionCountryResult" type="tns:ArrayOfString" />
					</s:sequence>
				</s:complexType>
			</s:element>
			<s:element name="getSupportCityDataset">
				<s:complexType>
					<s:sequence>
						<s:element minOccurs="0" maxOccurs="1" name="theRegionCode"
							type="s:string" />
					</s:sequence>
				</s:complexType>
			</s:element>
			<s:element name="getSupportCityDatasetResponse">
				<s:complexType>
					<s:sequence>
						<s:element minOccurs="0" maxOccurs="1"
							name="getSupportCityDatasetResult">
							<s:complexType>
								<s:sequence>
									<s:any minOccurs="2" maxOccurs="2"/>
								</s:sequence>
							</s:complexType>
						</s:element>
					</s:sequence>
				</s:complexType>
			</s:element>
			<s:element name="getSupportCityString">
				<s:complexType>
					<s:sequence>
						<s:element minOccurs="0" maxOccurs="1" name="theRegionCode"
							type="s:string" />
					</s:sequence>
				</s:complexType>
			</s:element>
			<s:element name="getSupportCityStringResponse">
				<s:complexType>
					<s:sequence>
						<s:element minOccurs="0" maxOccurs="1"
							name="getSupportCityStringResult" type="tns:ArrayOfString" />
					</s:sequence>
				</s:complexType>
			</s:element>
			<s:element name="getWeather">
				<s:complexType>
					<s:sequence>
						<s:element minOccurs="0" maxOccurs="1" name="theCityCode"
							type="s:string" />
						<s:element minOccurs="0" maxOccurs="1" name="theUserID"
							type="s:string" />
					</s:sequence>
				</s:complexType>
			</s:element>
			<s:element name="getWeatherResponse">
				<s:complexType>
					<s:sequence>
						<s:element minOccurs="0" maxOccurs="1" name="getWeatherResult"
							type="tns:ArrayOfString" />
					</s:sequence>
				</s:complexType>
			</s:element>
			<s:element name="DataSet" nillable="true">
				<s:complexType>
					<s:sequence>
						<s:any minOccurs="2" maxOccurs="2"/>
					</s:sequence>
				</s:complexType>
			</s:element>
			<s:element name="ArrayOfString" nillable="true"
				type="tns:ArrayOfString" />
		</s:schema>
	</wsdl:types>
	<wsdl:message name="getRegionDatasetSoapIn">
		<wsdl:part name="parameters" element="tns:getRegionDataset" />
	</wsdl:message>
	<wsdl:message name="getRegionDatasetSoapOut">
		<wsdl:part name="parameters" element="tns:getRegionDatasetResponse" />
	</wsdl:message>
	<wsdl:message name="getRegionProvinceSoapIn">
		<wsdl:part name="parameters" element="tns:getRegionProvince" />
	</wsdl:message>
	<wsdl:message name="getRegionProvinceSoapOut">
		<wsdl:part name="parameters" element="tns:getRegionProvinceResponse" />
	</wsdl:message>
	<wsdl:message name="getRegionCountrySoapIn">
		<wsdl:part name="parameters" element="tns:getRegionCountry" />
	</wsdl:message>
	<wsdl:message name="getRegionCountrySoapOut">
		<wsdl:part name="parameters" element="tns:getRegionCountryResponse" />
	</wsdl:message>
	<wsdl:message name="getSupportCityDatasetSoapIn">
		<wsdl:part name="parameters" element="tns:getSupportCityDataset" />
	</wsdl:message>
	<wsdl:message name="getSupportCityDatasetSoapOut">
		<wsdl:part name="parameters" element="tns:getSupportCityDatasetResponse" />
	</wsdl:message>
	<wsdl:message name="getSupportCityStringSoapIn">
		<wsdl:part name="parameters" element="tns:getSupportCityString" />
	</wsdl:message>
	<wsdl:message name="getSupportCityStringSoapOut">
		<wsdl:part name="parameters" element="tns:getSupportCityStringResponse" />
	</wsdl:message>
	<wsdl:message name="getWeatherSoapIn">
		<wsdl:part name="parameters" element="tns:getWeather" />
	</wsdl:message>
	<wsdl:message name="getWeatherSoapOut">
		<wsdl:part name="parameters" element="tns:getWeatherResponse" />
	</wsdl:message>
	<wsdl:message name="getRegionDatasetHttpGetIn" />
	<wsdl:message name="getRegionDatasetHttpGetOut">
		<wsdl:part name="Body" element="tns:DataSet" />
	</wsdl:message>
	<wsdl:message name="getRegionProvinceHttpGetIn" />
	<wsdl:message name="getRegionProvinceHttpGetOut">
		<wsdl:part name="Body" element="tns:ArrayOfString" />
	</wsdl:message>
	<wsdl:message name="getRegionCountryHttpGetIn" />
	<wsdl:message name="getRegionCountryHttpGetOut">
		<wsdl:part name="Body" element="tns:ArrayOfString" />
	</wsdl:message>
	<wsdl:message name="getSupportCityDatasetHttpGetIn">
		<wsdl:part name="theRegionCode" type="s:string" />
	</wsdl:message>
	<wsdl:message name="getSupportCityDatasetHttpGetOut">
		<wsdl:part name="Body" element="tns:DataSet" />
	</wsdl:message>
	<wsdl:message name="getSupportCityStringHttpGetIn">
		<wsdl:part name="theRegionCode" type="s:string" />
	</wsdl:message>
	<wsdl:message name="getSupportCityStringHttpGetOut">
		<wsdl:part name="Body" element="tns:ArrayOfString" />
	</wsdl:message>
	<wsdl:message name="getWeatherHttpGetIn">
		<wsdl:part name="theCityCode" type="s:string" />
		<wsdl:part name="theUserID" type="s:string" />
	</wsdl:message>
	<wsdl:message name="getWeatherHttpGetOut">
		<wsdl:part name="Body" element="tns:ArrayOfString" />
	</wsdl:message>
	<wsdl:message name="getRegionDatasetHttpPostIn" />
	<wsdl:message name="getRegionDatasetHttpPostOut">
		<wsdl:part name="Body" element="tns:DataSet" />
	</wsdl:message>
	<wsdl:message name="getRegionProvinceHttpPostIn" />
	<wsdl:message name="getRegionProvinceHttpPostOut">
		<wsdl:part name="Body" element="tns:ArrayOfString" />
	</wsdl:message>
	<wsdl:message name="getRegionCountryHttpPostIn" />
	<wsdl:message name="getRegionCountryHttpPostOut">
		<wsdl:part name="Body" element="tns:ArrayOfString" />
	</wsdl:message>
	<wsdl:message name="getSupportCityDatasetHttpPostIn">
		<wsdl:part name="theRegionCode" type="s:string" />
	</wsdl:message>
	<wsdl:message name="getSupportCityDatasetHttpPostOut">
		<wsdl:part name="Body" element="tns:DataSet" />
	</wsdl:message>
	<wsdl:message name="getSupportCityStringHttpPostIn">
		<wsdl:part name="theRegionCode" type="s:string" />
	</wsdl:message>
	<wsdl:message name="getSupportCityStringHttpPostOut">
		<wsdl:part name="Body" element="tns:ArrayOfString" />
	</wsdl:message>
	<wsdl:message name="getWeatherHttpPostIn">
		<wsdl:part name="theCityCode" type="s:string" />
		<wsdl:part name="theUserID" type="s:string" />
	</wsdl:message>
	<wsdl:message name="getWeatherHttpPostOut">
		<wsdl:part name="Body" element="tns:ArrayOfString" />
	</wsdl:message>
	<wsdl:portType name="WeatherWSSoap">
		<wsdl:operation name="getRegionDataset">
			<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">&lt;br
				/&gt;&lt;h3&gt;获得中国省份、直辖市、地区;国家名称(国外)和与之对应的ID&lt;/h3&gt;&lt;p&gt;输入参数:无,返回数据:DataSet。&lt;/p&gt;&lt;br
				/&gt;</wsdl:documentation>
			<wsdl:input message="tns:getRegionDatasetSoapIn" />
			<wsdl:output message="tns:getRegionDatasetSoapOut" />
		</wsdl:operation>
		<wsdl:operation name="getRegionProvince">
			<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">&lt;br
				/&gt;&lt;h3&gt;获得中国省份、直辖市、地区和与之对应的ID&lt;/h3&gt;&lt;p&gt;输入参数:无,返回数据:一维字符串数组。&lt;/p&gt;&lt;br
				/&gt;</wsdl:documentation>
			<wsdl:input message="tns:getRegionProvinceSoapIn" />
			<wsdl:output message="tns:getRegionProvinceSoapOut" />
		</wsdl:operation>
		<wsdl:operation name="getRegionCountry">
			<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">&lt;br
				/&gt;&lt;h3&gt;获得国外国家名称和与之对应的ID&lt;/h3&gt;&lt;p&gt;输入参数:无,返回数据:一维字符串数组。&lt;/p&gt;&lt;br
				/&gt;</wsdl:documentation>
			<wsdl:input message="tns:getRegionCountrySoapIn" />
			<wsdl:output message="tns:getRegionCountrySoapOut" />
		</wsdl:operation>
		<wsdl:operation name="getSupportCityDataset">
			<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">&lt;br
				/&gt;&lt;h3&gt;获得支持的城市/地区名称和与之对应的ID&lt;/h3&gt;&lt;p&gt;输入参数:theRegionCode
				= 省市、国家ID或名称,返回数据:DataSet。&lt;/p&gt;&lt;br /&gt;
			</wsdl:documentation>
			<wsdl:input message="tns:getSupportCityDatasetSoapIn" />
			<wsdl:output message="tns:getSupportCityDatasetSoapOut" />
		</wsdl:operation>
		<wsdl:operation name="getSupportCityString">
			<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">&lt;br
				/&gt;&lt;h3&gt;获得支持的城市/地区名称和与之对应的ID&lt;/h3&gt;&lt;p&gt;输入参数:theRegionCode
				= 省市、国家ID或名称,返回数据:一维字符串数组。&lt;/p&gt;&lt;br /&gt;
			</wsdl:documentation>
			<wsdl:input message="tns:getSupportCityStringSoapIn" />
			<wsdl:output message="tns:getSupportCityStringSoapOut" />
		</wsdl:operation>
		<wsdl:operation name="getWeather">
			<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">&lt;br
				/&gt;&lt;h3&gt;获得天气预报数据&lt;/h3&gt;&lt;p&gt;输入参数:城市/地区ID或名称,返回数据:一维字符串数组。&lt;/p&gt;&lt;br
				/&gt;</wsdl:documentation>
			<wsdl:input message="tns:getWeatherSoapIn" />
			<wsdl:output message="tns:getWeatherSoapOut" />
		</wsdl:operation>
	</wsdl:portType>
	<wsdl:portType name="WeatherWSHttpGet">
		<wsdl:operation name="getRegionDataset">
			<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">&lt;br
				/&gt;&lt;h3&gt;获得中国省份、直辖市、地区;国家名称(国外)和与之对应的ID&lt;/h3&gt;&lt;p&gt;输入参数:无,返回数据:DataSet。&lt;/p&gt;&lt;br
				/&gt;</wsdl:documentation>
			<wsdl:input message="tns:getRegionDatasetHttpGetIn" />
			<wsdl:output message="tns:getRegionDatasetHttpGetOut" />
		</wsdl:operation>
		<wsdl:operation name="getRegionProvince">
			<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">&lt;br
				/&gt;&lt;h3&gt;获得中国省份、直辖市、地区和与之对应的ID&lt;/h3&gt;&lt;p&gt;输入参数:无,返回数据:一维字符串数组。&lt;/p&gt;&lt;br
				/&gt;</wsdl:documentation>
			<wsdl:input message="tns:getRegionProvinceHttpGetIn" />
			<wsdl:output message="tns:getRegionProvinceHttpGetOut" />
		</wsdl:operation>
		<wsdl:operation name="getRegionCountry">
			<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">&lt;br
				/&gt;&lt;h3&gt;获得国外国家名称和与之对应的ID&lt;/h3&gt;&lt;p&gt;输入参数:无,返回数据:一维字符串数组。&lt;/p&gt;&lt;br
				/&gt;</wsdl:documentation>
			<wsdl:input message="tns:getRegionCountryHttpGetIn" />
			<wsdl:output message="tns:getRegionCountryHttpGetOut" />
		</wsdl:operation>
		<wsdl:operation name="getSupportCityDataset">
			<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">&lt;br
				/&gt;&lt;h3&gt;获得支持的城市/地区名称和与之对应的ID&lt;/h3&gt;&lt;p&gt;输入参数:theRegionCode
				= 省市、国家ID或名称,返回数据:DataSet。&lt;/p&gt;&lt;br /&gt;
			</wsdl:documentation>
			<wsdl:input message="tns:getSupportCityDatasetHttpGetIn" />
			<wsdl:output message="tns:getSupportCityDatasetHttpGetOut" />
		</wsdl:operation>
		<wsdl:operation name="getSupportCityString">
			<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">&lt;br
				/&gt;&lt;h3&gt;获得支持的城市/地区名称和与之对应的ID&lt;/h3&gt;&lt;p&gt;输入参数:theRegionCode
				= 省市、国家ID或名称,返回数据:一维字符串数组。&lt;/p&gt;&lt;br /&gt;
			</wsdl:documentation>
			<wsdl:input message="tns:getSupportCityStringHttpGetIn" />
			<wsdl:output message="tns:getSupportCityStringHttpGetOut" />
		</wsdl:operation>
		<wsdl:operation name="getWeather">
			<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">&lt;br
				/&gt;&lt;h3&gt;获得天气预报数据&lt;/h3&gt;&lt;p&gt;输入参数:城市/地区ID或名称,返回数据:一维字符串数组。&lt;/p&gt;&lt;br
				/&gt;</wsdl:documentation>
			<wsdl:input message="tns:getWeatherHttpGetIn" />
			<wsdl:output message="tns:getWeatherHttpGetOut" />
		</wsdl:operation>
	</wsdl:portType>
	<wsdl:portType name="WeatherWSHttpPost">
		<wsdl:operation name="getRegionDataset">
			<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">&lt;br
				/&gt;&lt;h3&gt;获得中国省份、直辖市、地区;国家名称(国外)和与之对应的ID&lt;/h3&gt;&lt;p&gt;输入参数:无,返回数据:DataSet。&lt;/p&gt;&lt;br
				/&gt;</wsdl:documentation>
			<wsdl:input message="tns:getRegionDatasetHttpPostIn" />
			<wsdl:output message="tns:getRegionDatasetHttpPostOut" />
		</wsdl:operation>
		<wsdl:operation name="getRegionProvince">
			<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">&lt;br
				/&gt;&lt;h3&gt;获得中国省份、直辖市、地区和与之对应的ID&lt;/h3&gt;&lt;p&gt;输入参数:无,返回数据:一维字符串数组。&lt;/p&gt;&lt;br
				/&gt;</wsdl:documentation>
			<wsdl:input message="tns:getRegionProvinceHttpPostIn" />
			<wsdl:output message="tns:getRegionProvinceHttpPostOut" />
		</wsdl:operation>
		<wsdl:operation name="getRegionCountry">
			<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">&lt;br
				/&gt;&lt;h3&gt;获得国外国家名称和与之对应的ID&lt;/h3&gt;&lt;p&gt;输入参数:无,返回数据:一维字符串数组。&lt;/p&gt;&lt;br
				/&gt;</wsdl:documentation>
			<wsdl:input message="tns:getRegionCountryHttpPostIn" />
			<wsdl:output message="tns:getRegionCountryHttpPostOut" />
		</wsdl:operation>
		<wsdl:operation name="getSupportCityDataset">
			<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">&lt;br
				/&gt;&lt;h3&gt;获得支持的城市/地区名称和与之对应的ID&lt;/h3&gt;&lt;p&gt;输入参数:theRegionCode
				= 省市、国家ID或名称,返回数据:DataSet。&lt;/p&gt;&lt;br /&gt;
			</wsdl:documentation>
			<wsdl:input message="tns:getSupportCityDatasetHttpPostIn" />
			<wsdl:output message="tns:getSupportCityDatasetHttpPostOut" />
		</wsdl:operation>
		<wsdl:operation name="getSupportCityString">
			<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">&lt;br
				/&gt;&lt;h3&gt;获得支持的城市/地区名称和与之对应的ID&lt;/h3&gt;&lt;p&gt;输入参数:theRegionCode
				= 省市、国家ID或名称,返回数据:一维字符串数组。&lt;/p&gt;&lt;br /&gt;
			</wsdl:documentation>
			<wsdl:input message="tns:getSupportCityStringHttpPostIn" />
			<wsdl:output message="tns:getSupportCityStringHttpPostOut" />
		</wsdl:operation>
		<wsdl:operation name="getWeather">
			<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">&lt;br
				/&gt;&lt;h3&gt;获得天气预报数据&lt;/h3&gt;&lt;p&gt;输入参数:城市/地区ID或名称,返回数据:一维字符串数组。&lt;/p&gt;&lt;br
				/&gt;</wsdl:documentation>
			<wsdl:input message="tns:getWeatherHttpPostIn" />
			<wsdl:output message="tns:getWeatherHttpPostOut" />
		</wsdl:operation>
	</wsdl:portType>
	<wsdl:binding name="WeatherWSSoap" type="tns:WeatherWSSoap">
		<soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
		<wsdl:operation name="getRegionDataset">
			<soap:operation soapAction="http://WebXml.com.cn/getRegionDataset"
				style="document" />
			<wsdl:input>
				<soap:body use="literal" />
			</wsdl:input>
			<wsdl:output>
				<soap:body use="literal" />
			</wsdl:output>
		</wsdl:operation>
		<wsdl:operation name="getRegionProvince">
			<soap:operation soapAction="http://WebXml.com.cn/getRegionProvince"
				style="document" />
			<wsdl:input>
				<soap:body use="literal" />
			</wsdl:input>
			<wsdl:output>
				<soap:body use="literal" />
			</wsdl:output>
		</wsdl:operation>
		<wsdl:operation name="getRegionCountry">
			<soap:operation soapAction="http://WebXml.com.cn/getRegionCountry"
				style="document" />
			<wsdl:input>
				<soap:body use="literal" />
			</wsdl:input>
			<wsdl:output>
				<soap:body use="literal" />
			</wsdl:output>
		</wsdl:operation>
		<wsdl:operation name="getSupportCityDataset">
			<soap:operation soapAction="http://WebXml.com.cn/getSupportCityDataset"
				style="document" />
			<wsdl:input>
				<soap:body use="literal" />
			</wsdl:input>
			<wsdl:output>
				<soap:body use="literal" />
			</wsdl:output>
		</wsdl:operation>
		<wsdl:operation name="getSupportCityString">
			<soap:operation soapAction="http://WebXml.com.cn/getSupportCityString"
				style="document" />
			<wsdl:input>
				<soap:body use="literal" />
			</wsdl:input>
			<wsdl:output>
				<soap:body use="literal" />
			</wsdl:output>
		</wsdl:operation>
		<wsdl:operation name="getWeather">
			<soap:operation soapAction="http://WebXml.com.cn/getWeather"
				style="document" />
			<wsdl:input>
				<soap:body use="literal" />
			</wsdl:input>
			<wsdl:output>
				<soap:body use="literal" />
			</wsdl:output>
		</wsdl:operation>
	</wsdl:binding>
	<wsdl:binding name="WeatherWSSoap12" type="tns:WeatherWSSoap">
		<soap12:binding transport="http://schemas.xmlsoap.org/soap/http" />
		<wsdl:operation name="getRegionDataset">
			<soap12:operation soapAction="http://WebXml.com.cn/getRegionDataset"
				style="document" />
			<wsdl:input>
				<soap12:body use="literal" />
			</wsdl:input>
			<wsdl:output>
				<soap12:body use="literal" />
			</wsdl:output>
		</wsdl:operation>
		<wsdl:operation name="getRegionProvince">
			<soap12:operation soapAction="http://WebXml.com.cn/getRegionProvince"
				style="document" />
			<wsdl:input>
				<soap12:body use="literal" />
			</wsdl:input>
			<wsdl:output>
				<soap12:body use="literal" />
			</wsdl:output>
		</wsdl:operation>
		<wsdl:operation name="getRegionCountry">
			<soap12:operation soapAction="http://WebXml.com.cn/getRegionCountry"
				style="document" />
			<wsdl:input>
				<soap12:body use="literal" />
			</wsdl:input>
			<wsdl:output>
				<soap12:body use="literal" />
			</wsdl:output>
		</wsdl:operation>
		<wsdl:operation name="getSupportCityDataset">
			<soap12:operation soapAction="http://WebXml.com.cn/getSupportCityDataset"
				style="document" />
			<wsdl:input>
				<soap12:body use="literal" />
			</wsdl:input>
			<wsdl:output>
				<soap12:body use="literal" />
			</wsdl:output>
		</wsdl:operation>
		<wsdl:operation name="getSupportCityString">
			<soap12:operation soapAction="http://WebXml.com.cn/getSupportCityString"
				style="document" />
			<wsdl:input>
				<soap12:body use="literal" />
			</wsdl:input>
			<wsdl:output>
				<soap12:body use="literal" />
			</wsdl:output>
		</wsdl:operation>
		<wsdl:operation name="getWeather">
			<soap12:operation soapAction="http://WebXml.com.cn/getWeather"
				style="document" />
			<wsdl:input>
				<soap12:body use="literal" />
			</wsdl:input>
			<wsdl:output>
				<soap12:body use="literal" />
			</wsdl:output>
		</wsdl:operation>
	</wsdl:binding>
	<wsdl:binding name="WeatherWSHttpGet" type="tns:WeatherWSHttpGet">
		<http:binding verb="GET" />
		<wsdl:operation name="getRegionDataset">
			<http:operation location="/getRegionDataset" />
			<wsdl:input>
				<http:urlEncoded />
			</wsdl:input>
			<wsdl:output>
				<mime:mimeXml part="Body" />
			</wsdl:output>
		</wsdl:operation>
		<wsdl:operation name="getRegionProvince">
			<http:operation location="/getRegionProvince" />
			<wsdl:input>
				<http:urlEncoded />
			</wsdl:input>
			<wsdl:output>
				<mime:mimeXml part="Body" />
			</wsdl:output>
		</wsdl:operation>
		<wsdl:operation name="getRegionCountry">
			<http:operation location="/getRegionCountry" />
			<wsdl:input>
				<http:urlEncoded />
			</wsdl:input>
			<wsdl:output>
				<mime:mimeXml part="Body" />
			</wsdl:output>
		</wsdl:operation>
		<wsdl:operation name="getSupportCityDataset">
			<http:operation location="/getSupportCityDataset" />
			<wsdl:input>
				<http:urlEncoded />
			</wsdl:input>
			<wsdl:output>
				<mime:mimeXml part="Body" />
			</wsdl:output>
		</wsdl:operation>
		<wsdl:operation name="getSupportCityString">
			<http:operation location="/getSupportCityString" />
			<wsdl:input>
				<http:urlEncoded />
			</wsdl:input>
			<wsdl:output>
				<mime:mimeXml part="Body" />
			</wsdl:output>
		</wsdl:operation>
		<wsdl:operation name="getWeather">
			<http:operation location="/getWeather" />
			<wsdl:input>
				<http:urlEncoded />
			</wsdl:input>
			<wsdl:output>
				<mime:mimeXml part="Body" />
			</wsdl:output>
		</wsdl:operation>
	</wsdl:binding>
	<wsdl:binding name="WeatherWSHttpPost" type="tns:WeatherWSHttpPost">
		<http:binding verb="POST" />
		<wsdl:operation name="getRegionDataset">
			<http:operation location="/getRegionDataset" />
			<wsdl:input>
				<mime:content type="application/x-www-form-urlencoded" />
			</wsdl:input>
			<wsdl:output>
				<mime:mimeXml part="Body" />
			</wsdl:output>
		</wsdl:operation>
		<wsdl:operation name="getRegionProvince">
			<http:operation location="/getRegionProvince" />
			<wsdl:input>
				<mime:content type="application/x-www-form-urlencoded" />
			</wsdl:input>
			<wsdl:output>
				<mime:mimeXml part="Body" />
			</wsdl:output>
		</wsdl:operation>
		<wsdl:operation name="getRegionCountry">
			<http:operation location="/getRegionCountry" />
			<wsdl:input>
				<mime:content type="application/x-www-form-urlencoded" />
			</wsdl:input>
			<wsdl:output>
				<mime:mimeXml part="Body" />
			</wsdl:output>
		</wsdl:operation>
		<wsdl:operation name="getSupportCityDataset">
			<http:operation location="/getSupportCityDataset" />
			<wsdl:input>
				<mime:content type="application/x-www-form-urlencoded" />
			</wsdl:input>
			<wsdl:output>
				<mime:mimeXml part="Body" />
			</wsdl:output>
		</wsdl:operation>
		<wsdl:operation name="getSupportCityString">
			<http:operation location="/getSupportCityString" />
			<wsdl:input>
				<mime:content type="application/x-www-form-urlencoded" />
			</wsdl:input>
			<wsdl:output>
				<mime:mimeXml part="Body" />
			</wsdl:output>
		</wsdl:operation>
		<wsdl:operation name="getWeather">
			<http:operation location="/getWeather" />
			<wsdl:input>
				<mime:content type="application/x-www-form-urlencoded" />
			</wsdl:input>
			<wsdl:output>
				<mime:mimeXml part="Body" />
			</wsdl:output>
		</wsdl:operation>
	</wsdl:binding>
	<wsdl:service name="WeatherWS">
		<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">&lt;a
			href="http://www.webxml.com.cn/"
			target="_blank"&gt;WebXml.com.cn&lt;/a&gt;
			&lt;strong&gt;2400多个城市天气预报Web服务&lt;/strong&gt;,包含2300个以上中国城市和100个以上国外城市天气预报数据。数据每2.5小时左右自动更新一次,准确可靠。&lt;br
			/&gt;使用本站 WEB 服务请注明或链接本站:&lt;a href="http://www.webxml.com.cn/"
			target="_blank"&gt;http://www.webxml.com.cn/&lt;/a&gt; 感谢大家的支持!&lt;br
			/&gt;&lt;br /&gt;&lt;img alt="PDF" title="PDF file"
			src="http://www.webxml.com.cn/images/icon/pdf.gif"
			style="vertical-align: middle;" /&gt; &lt;a
			href="http://www.webxml.com.cn/files/WeatherWsHelp.pdf"
			target="_blank"&gt;接口帮助文档&lt;/a&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;
			&lt;img alt="ZIP" title="ZIP file"
			src="http://www.webxml.com.cn/images/icon/zip.gif"
			style="vertical-align: middle;" /&gt; &lt;a
			href="http://www.webxml.com.cn/files/about_city.zip"&gt;部分城市介绍和气候背景&lt;/a&gt;
			&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;img alt="ZIP" title="ZIP file"
			src="http://www.webxml.com.cn/images/icon/zip.gif"
			style="vertical-align: middle;" /&gt; &lt;a
			href="http://www.webxml.com.cn/files/city_photo.zip"&gt;部分城市图片&lt;/a&gt;
			&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;img alt="HTML" title="HTML file"
			src="http://www.webxml.com.cn/images/icon/html.gif"
			style="vertical-align: middle;" /&gt; &lt;a
			href="http://www.webxml.com.cn/zh_cn/weather_icon.aspx"
			target="_blank"&gt;天气现象和图例&lt;/a&gt;&lt;br /&gt;&amp;nbsp;
		</wsdl:documentation>
		<wsdl:port name="WeatherWSSoap" binding="tns:WeatherWSSoap">
			<soap:address location="http://ws.webxml.com.cn/WebServices/WeatherWS.asmx" />
		</wsdl:port>
		<wsdl:port name="WeatherWSSoap12" binding="tns:WeatherWSSoap12">
			<soap12:address location="http://ws.webxml.com.cn/WebServices/WeatherWS.asmx" />
		</wsdl:port>
		<wsdl:port name="WeatherWSHttpGet" binding="tns:WeatherWSHttpGet">
			<http:address location="http://ws.webxml.com.cn/WebServices/WeatherWS.asmx" />
		</wsdl:port>
		<wsdl:port name="WeatherWSHttpPost" binding="tns:WeatherWSHttpPost">
			<http:address location="http://ws.webxml.com.cn/WebServices/WeatherWS.asmx" />
		</wsdl:port>
	</wsdl:service>
</wsdl:definitions>

然后在dos窗口中,使用文本解析即可。

虽然有警告,但是生成文件了 。

然后我们尝试调用这个天气预报的接口:

所以根文件是WeatherWS

客户端调用代码:

package cn.com.webxml.test;

import java.util.List;

import cn.com.webxml.ArrayOfString;
import cn.com.webxml.WeatherWS;
import cn.com.webxml.WeatherWSSoap;

public class WSReportTest {

	public static void main(String[] args) {
		WeatherWS  weatherWS=new WeatherWS();
		WeatherWSSoap weatherWSSoap = weatherWS.getWeatherWSSoap();
		ArrayOfString weather = weatherWSSoap.getWeather("北京", null);
		List<String> list = weather.getString();

		for(String str:list){

			System.out.println(str);

		}

	}

}

运行结果为:

同理,可以尝试调用国内手机号码归属地查询WEB服务。

2.编写手机号码归属地的webservice

url地址:http://ws.webxml.com.cn/WebServices/MobileCodeWS.asmx?op=getMobileCodeInfo

wsdl的链接:http://ws.webxml.com.cn/WebServices/MobileCodeWS.asmx?wsdl

调用代码:

package cn.com.webxml.test;

import cn.com.webxml.MobileCodeWS;
import cn.com.webxml.MobileCodeWSSoap;

public class WSModelTest {

	public static void main(String[] args) {
		MobileCodeWS mobileCodeWS=new MobileCodeWS();
		MobileCodeWSSoap mobileCodeWSSoap = mobileCodeWS.getMobileCodeWSSoap();
		String mobileCodeInfo = mobileCodeWSSoap.getMobileCodeInfo("15713329014", null);
		System.out.println(mobileCodeInfo);
	}

}

运行结果:

其他接口的调用也是类似,不再赘述。

猜你喜欢

转载自blog.csdn.net/u012045045/article/details/84201955