title: Why this SOAP web services doesn't work as expected?
body: <p>I am pretty new in <strong>SOAP</strong> web services and I have the following problem trying to use a <strong>WSDL</strong> into <strong>SoapUI</strong>.</p>
  
  <p>Into an application on which I have to work I found this <strong>WSDL</strong> file that should be the web services contract that my application should use to retrieve some data (it is a meteo forecast web service):</p>
  
  <pre><code>&lt;?xml version="1.0" encoding="utf-8"?&gt;
  &lt;wsdl:definitions 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://www.webserviceX.NET" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" 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://www.webserviceX.NET" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"&gt;
    &lt;wsdl:types&gt;
      &lt;s:schema elementFormDefault="qualified" targetNamespace="http://www.webserviceX.NET"&gt;
        &lt;s:element name="GetWeather"&gt;
          &lt;s:complexType&gt;
            &lt;s:sequence&gt;
              &lt;s:element minOccurs="0" maxOccurs="1" name="CityName" type="s:string" /&gt;
              &lt;s:element minOccurs="0" maxOccurs="1" name="CountryName" type="s:string" /&gt;
            &lt;/s:sequence&gt;
          &lt;/s:complexType&gt;
        &lt;/s:element&gt;
        &lt;s:element name="GetWeatherResponse"&gt;
          &lt;s:complexType&gt;
            &lt;s:sequence&gt;
              &lt;s:element minOccurs="0" maxOccurs="1" name="GetWeatherResult" type="s:string" /&gt;
            &lt;/s:sequence&gt;
          &lt;/s:complexType&gt;
        &lt;/s:element&gt;
        &lt;s:element name="GetCitiesByCountry"&gt;
          &lt;s:complexType&gt;
            &lt;s:sequence&gt;
              &lt;s:element minOccurs="0" maxOccurs="1" name="CountryName" type="s:string" /&gt;
            &lt;/s:sequence&gt;
          &lt;/s:complexType&gt;
        &lt;/s:element&gt;
        &lt;s:element name="GetCitiesByCountryResponse"&gt;
          &lt;s:complexType&gt;
            &lt;s:sequence&gt;
              &lt;s:element minOccurs="0" maxOccurs="1" name="GetCitiesByCountryResult" type="s:string" /&gt;
            &lt;/s:sequence&gt;
          &lt;/s:complexType&gt;
        &lt;/s:element&gt;
        &lt;s:element name="string" nillable="true" type="s:string" /&gt;
      &lt;/s:schema&gt;
    &lt;/wsdl:types&gt;
    &lt;wsdl:message name="GetWeatherSoapIn"&gt;
      &lt;wsdl:part name="parameters" element="tns:GetWeather" /&gt;
    &lt;/wsdl:message&gt;
    &lt;wsdl:message name="GetWeatherSoapOut"&gt;
      &lt;wsdl:part name="parameters" element="tns:GetWeatherResponse" /&gt;
    &lt;/wsdl:message&gt;
    &lt;wsdl:message name="GetCitiesByCountrySoapIn"&gt;
      &lt;wsdl:part name="parameters" element="tns:GetCitiesByCountry" /&gt;
    &lt;/wsdl:message&gt;
    &lt;wsdl:message name="GetCitiesByCountrySoapOut"&gt;
      &lt;wsdl:part name="parameters" element="tns:GetCitiesByCountryResponse" /&gt;
    &lt;/wsdl:message&gt;
    &lt;wsdl:message name="GetWeatherHttpGetIn"&gt;
      &lt;wsdl:part name="CityName" type="s:string" /&gt;
      &lt;wsdl:part name="CountryName" type="s:string" /&gt;
    &lt;/wsdl:message&gt;
    &lt;wsdl:message name="GetWeatherHttpGetOut"&gt;
      &lt;wsdl:part name="Body" element="tns:string" /&gt;
    &lt;/wsdl:message&gt;
    &lt;wsdl:message name="GetCitiesByCountryHttpGetIn"&gt;
      &lt;wsdl:part name="CountryName" type="s:string" /&gt;
    &lt;/wsdl:message&gt;
    &lt;wsdl:message name="GetCitiesByCountryHttpGetOut"&gt;
      &lt;wsdl:part name="Body" element="tns:string" /&gt;
    &lt;/wsdl:message&gt;
    &lt;wsdl:message name="GetWeatherHttpPostIn"&gt;
      &lt;wsdl:part name="CityName" type="s:string" /&gt;
      &lt;wsdl:part name="CountryName" type="s:string" /&gt;
    &lt;/wsdl:message&gt;
    &lt;wsdl:message name="GetWeatherHttpPostOut"&gt;
      &lt;wsdl:part name="Body" element="tns:string" /&gt;
    &lt;/wsdl:message&gt;
    &lt;wsdl:message name="GetCitiesByCountryHttpPostIn"&gt;
      &lt;wsdl:part name="CountryName" type="s:string" /&gt;
    &lt;/wsdl:message&gt;
    &lt;wsdl:message name="GetCitiesByCountryHttpPostOut"&gt;
      &lt;wsdl:part name="Body" element="tns:string" /&gt;
    &lt;/wsdl:message&gt;
    &lt;wsdl:portType name="GlobalWeatherSoap"&gt;
      &lt;wsdl:operation name="GetWeather"&gt;
        &lt;wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"&gt;Get weather report for all major cities around the world.&lt;/wsdl:documentation&gt;
        &lt;wsdl:input message="tns:GetWeatherSoapIn" /&gt;
        &lt;wsdl:output message="tns:GetWeatherSoapOut" /&gt;
      &lt;/wsdl:operation&gt;
      &lt;wsdl:operation name="GetCitiesByCountry"&gt;
        &lt;wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"&gt;Get all major cities by country name(full / part).&lt;/wsdl:documentation&gt;
        &lt;wsdl:input message="tns:GetCitiesByCountrySoapIn" /&gt;
        &lt;wsdl:output message="tns:GetCitiesByCountrySoapOut" /&gt;
      &lt;/wsdl:operation&gt;
    &lt;/wsdl:portType&gt;
    &lt;wsdl:portType name="GlobalWeatherHttpGet"&gt;
      &lt;wsdl:operation name="GetWeather"&gt;
        &lt;wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"&gt;Get weather report for all major cities around the world.&lt;/wsdl:documentation&gt;
        &lt;wsdl:input message="tns:GetWeatherHttpGetIn" /&gt;
        &lt;wsdl:output message="tns:GetWeatherHttpGetOut" /&gt;
      &lt;/wsdl:operation&gt;
      &lt;wsdl:operation name="GetCitiesByCountry"&gt;
        &lt;wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"&gt;Get all major cities by country name(full / part).&lt;/wsdl:documentation&gt;
        &lt;wsdl:input message="tns:GetCitiesByCountryHttpGetIn" /&gt;
        &lt;wsdl:output message="tns:GetCitiesByCountryHttpGetOut" /&gt;
      &lt;/wsdl:operation&gt;
    &lt;/wsdl:portType&gt;
    &lt;wsdl:portType name="GlobalWeatherHttpPost"&gt;
      &lt;wsdl:operation name="GetWeather"&gt;
        &lt;wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"&gt;Get weather report for all major cities around the world.&lt;/wsdl:documentation&gt;
        &lt;wsdl:input message="tns:GetWeatherHttpPostIn" /&gt;
        &lt;wsdl:output message="tns:GetWeatherHttpPostOut" /&gt;
      &lt;/wsdl:operation&gt;
      &lt;wsdl:operation name="GetCitiesByCountry"&gt;
        &lt;wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"&gt;Get all major cities by country name(full / part).&lt;/wsdl:documentation&gt;
        &lt;wsdl:input message="tns:GetCitiesByCountryHttpPostIn" /&gt;
        &lt;wsdl:output message="tns:GetCitiesByCountryHttpPostOut" /&gt;
      &lt;/wsdl:operation&gt;
    &lt;/wsdl:portType&gt;
    &lt;wsdl:binding name="GlobalWeatherSoap" type="tns:GlobalWeatherSoap"&gt;
      &lt;soap:binding transport="http://schemas.xmlsoap.org/soap/http" /&gt;
      &lt;wsdl:operation name="GetWeather"&gt;
        &lt;soap:operation soapAction="http://www.webserviceX.NET/GetWeather" style="document" /&gt;
        &lt;wsdl:input&gt;
          &lt;soap:body use="literal" /&gt;
        &lt;/wsdl:input&gt;
        &lt;wsdl:output&gt;
          &lt;soap:body use="literal" /&gt;
        &lt;/wsdl:output&gt;
      &lt;/wsdl:operation&gt;
      &lt;wsdl:operation name="GetCitiesByCountry"&gt;
        &lt;soap:operation soapAction="http://www.webserviceX.NET/GetCitiesByCountry" style="document" /&gt;
        &lt;wsdl:input&gt;
          &lt;soap:body use="literal" /&gt;
        &lt;/wsdl:input&gt;
        &lt;wsdl:output&gt;
          &lt;soap:body use="literal" /&gt;
        &lt;/wsdl:output&gt;
      &lt;/wsdl:operation&gt;
    &lt;/wsdl:binding&gt;
    &lt;wsdl:binding name="GlobalWeatherSoap12" type="tns:GlobalWeatherSoap"&gt;
      &lt;soap12:binding transport="http://schemas.xmlsoap.org/soap/http" /&gt;
      &lt;wsdl:operation name="GetWeather"&gt;
        &lt;soap12:operation soapAction="http://www.webserviceX.NET/GetWeather" style="document" /&gt;
        &lt;wsdl:input&gt;
          &lt;soap12:body use="literal" /&gt;
        &lt;/wsdl:input&gt;
        &lt;wsdl:output&gt;
          &lt;soap12:body use="literal" /&gt;
        &lt;/wsdl:output&gt;
      &lt;/wsdl:operation&gt;
      &lt;wsdl:operation name="GetCitiesByCountry"&gt;
        &lt;soap12:operation soapAction="http://www.webserviceX.NET/GetCitiesByCountry" style="document" /&gt;
        &lt;wsdl:input&gt;
          &lt;soap12:body use="literal" /&gt;
        &lt;/wsdl:input&gt;
        &lt;wsdl:output&gt;
          &lt;soap12:body use="literal" /&gt;
        &lt;/wsdl:output&gt;
      &lt;/wsdl:operation&gt;
    &lt;/wsdl:binding&gt;
    &lt;wsdl:binding name="GlobalWeatherHttpGet" type="tns:GlobalWeatherHttpGet"&gt;
      &lt;http:binding verb="GET" /&gt;
      &lt;wsdl:operation name="GetWeather"&gt;
        &lt;http:operation location="/GetWeather" /&gt;
        &lt;wsdl:input&gt;
          &lt;http:urlEncoded /&gt;
        &lt;/wsdl:input&gt;
        &lt;wsdl:output&gt;
          &lt;mime:mimeXml part="Body" /&gt;
        &lt;/wsdl:output&gt;
      &lt;/wsdl:operation&gt;
      &lt;wsdl:operation name="GetCitiesByCountry"&gt;
        &lt;http:operation location="/GetCitiesByCountry" /&gt;
        &lt;wsdl:input&gt;
          &lt;http:urlEncoded /&gt;
        &lt;/wsdl:input&gt;
        &lt;wsdl:output&gt;
          &lt;mime:mimeXml part="Body" /&gt;
        &lt;/wsdl:output&gt;
      &lt;/wsdl:operation&gt;
    &lt;/wsdl:binding&gt;
    &lt;wsdl:binding name="GlobalWeatherHttpPost" type="tns:GlobalWeatherHttpPost"&gt;
      &lt;http:binding verb="POST" /&gt;
      &lt;wsdl:operation name="GetWeather"&gt;
        &lt;http:operation location="/GetWeather" /&gt;
        &lt;wsdl:input&gt;
          &lt;mime:content type="application/x-www-form-urlencoded" /&gt;
        &lt;/wsdl:input&gt;
        &lt;wsdl:output&gt;
          &lt;mime:mimeXml part="Body" /&gt;
        &lt;/wsdl:output&gt;
      &lt;/wsdl:operation&gt;
      &lt;wsdl:operation name="GetCitiesByCountry"&gt;
        &lt;http:operation location="/GetCitiesByCountry" /&gt;
        &lt;wsdl:input&gt;
          &lt;mime:content type="application/x-www-form-urlencoded" /&gt;
        &lt;/wsdl:input&gt;
        &lt;wsdl:output&gt;
          &lt;mime:mimeXml part="Body" /&gt;
        &lt;/wsdl:output&gt;
      &lt;/wsdl:operation&gt;
    &lt;/wsdl:binding&gt;
    &lt;wsdl:service name="GlobalWeather"&gt;
      &lt;wsdl:port name="GlobalWeatherSoap" binding="tns:GlobalWeatherSoap"&gt;
        &lt;soap:address location="http://www.webservicex.net/globalweather.asmx" /&gt;
      &lt;/wsdl:port&gt;
      &lt;wsdl:port name="GlobalWeatherSoap12" binding="tns:GlobalWeatherSoap12"&gt;
        &lt;soap12:address location="http://www.webservicex.net/globalweather.asmx" /&gt;
      &lt;/wsdl:port&gt;
      &lt;wsdl:port name="GlobalWeatherHttpGet" binding="tns:GlobalWeatherHttpGet"&gt;
        &lt;http:address location="http://www.webservicex.net/globalweather.asmx" /&gt;
      &lt;/wsdl:port&gt;
      &lt;wsdl:port name="GlobalWeatherHttpPost" binding="tns:GlobalWeatherHttpPost"&gt;
        &lt;http:address location="http://www.webservicex.net/globalweather.asmx" /&gt;
      &lt;/wsdl:port&gt;
    &lt;/wsdl:service&gt;
  &lt;/wsdl:definitions&gt;
  </code></pre>
  
  <p>So, in SoapUI I correctly created a new Soap project using this WSDL and I am obtaining this project:</p>
  
  <p><a href="https://i.stack.imgur.com/aDQXw.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/aDQXw.png" alt="enter image description here"></a></p>
  
  <p>The main problem is that this web service seems to be not completly working, I tried with SoapUI but I obtain the same results with the web interface provided at this URL</p>
  
  <p><a href="http://www.webservicex.net/globalweather.asmx" rel="nofollow noreferrer">http://www.webservicex.net/globalweather.asmx</a></p>
  
  <p>Opening this URL there are the 2 possible request:</p>
  
  <p>Selecting the first one <strong>GetCitiesByCountry</strong> (<a href="http://www.webservicex.net/globalweather.asmx?op=GetCitiesByCountry" rel="nofollow noreferrer">http://www.webservicex.net/globalweather.asmx?op=GetCitiesByCountry</a>) I can insert a country (for example <strong>Italy</strong>) and it works fine...I am obtaining the list of all the italian city, something like this:</p>
  
  <pre><code>&lt;string xmlns="http://www.webserviceX.NET"&gt;
  &lt;NewDataSet&gt; &lt;Table&gt; &lt;Country&gt;Italy&lt;/Country&gt; &lt;City&gt;Amendola&lt;/City&gt; &lt;/Table&gt; &lt;Table&gt; &lt;Country&gt;Italy&lt;/Country&gt; &lt;City&gt;Crotone&lt;/City&gt; &lt;/Table&gt; &lt;Table&gt; &lt;Country&gt;Italy&lt;/Country&gt; &lt;City&gt;Bari / Palese Macchie&lt;/City&gt; &lt;/Table&gt; &lt;Table&gt; &lt;Country&gt;Italy&lt;/Country&gt; &lt;City&gt;Monte S. Angelo&lt;/City&gt; &lt;/Table&gt; &lt;Table&gt; &lt;Country&gt;Italy&lt;/Country&gt; &lt;City&gt;Grottaglie&lt;/City&gt; &lt;/Table&gt; ..............................................................
  ..............................................................
  ..............................................................
  </code></pre>
  
  <p>Ok, great...it works...now I want to obtain the weather forecast of one of this city so I try with the second request provided by this web service, this link: <a href="http://www.webservicex.net/globalweather.asmx?op=GetWeather" rel="nofollow noreferrer">http://www.webservicex.net/globalweather.asmx?op=GetWeather</a></p>
  
  <p>So I insert <strong>Italy</strong> as value for the <strong>CityName</strong> parameter and, for example, <strong>Crotone</strong> as value of the <strong>CountryName</strong> </p>
  
  <p>Doing in this way (I tried for different cities and also different countries) I am always obtaining this error message as web service response:</p>
  
  <pre><code>&lt;string xmlns="http://www.webserviceX.NET"&gt;Data Not Found&lt;/string&gt;
  </code></pre>
  
  <p>Why is it not working? Am I missing something?</p>
  
  <p>Another doubt is: this web service seems to be related to this <strong>www.webserviceX.NET</strong>, what is it? Is it something like a web service provider?</p>