This is the WSDL
I created for php
(Yii) web service call to connect to android. But I get
10-19 11:17:36.068: W/System.err(11165): org.xmlpull.v1.XmlPullParserException: expected: START_TAG {http://schemas.xmlsoap.org/soap/envelope/}Envelope (position:START_TAG <{http://schemas.xmlsoap.org/wsdl/}wsdl:definitions name='StatisticController' targetNamespace='http://example.com/webservice/statistic/'>@13:91 in java.io.InputStreamReader@40539de0)
XML:
<wsdl:definitions name="StatisticController" targetNamespace="http://example.com/webservice/statistic/">
<wsdl:message name="getGeneralstatRequest"/>
<wsdl:message name="getGeneralstatResponse">
<wsdl:part name="return" type="xsd:struct"/>
</wsdl:message>
<wsdl:portType name="StatisticControllerPortType">
<wsdl:operation name="getGeneralstat">
<wsdl:documentation/>
<wsdl:input message="tns:getGeneralstatRequest"/>
<wsdl:output message="tns:getGeneralstatResponse"/>
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="StatisticControllerBinding" type="tns:StatisticControllerPortType">
<soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
<wsdl:operation name="getGeneralstat">
<soap:operation soapAction="http://example.com/webservice/statistic/getGeneralstat" style="rpc"/>
<wsdl:input>
<soap:body use="encoded" namespace="http://example.com/webservice/statistic/" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
</wsdl:input>
<wsdl:output>
<soap:body use="encoded" namespace="http://example.com/webservice/statistic/" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="StatisticControllerService">
<wsdl:port name="StatisticControllerPort" binding="tns:StatisticControllerBinding">
<soap:address location="http://example.com/webservice/statistic/ws/1"/>
</wsdl:port>
</wsdl:service>
Webservice is working. I tested with http://www.validwsdl.com/
Java code:
private static String domain_name = URLEncoder.encode("example.com");
private static final String METHOD_NAME = "getGeneralstat";
private static final String NAMESPACE = "http://"+ domain_name +"/webservice/statistic/";
//private static final String URL = "http://"+ domain_name +"/webservice/statistic/";
private static final String URL = "http://"+ domain_name +"/webservice/generalstat2.wsdl";
private static final String SOAP_ACTION = NAMESPACE + METHOD_NAME;
...
SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME);
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
envelope.setOutputSoapObject(request);
HttpTransportSE ht = new HttpTransportSE(URL,8000); // trying 8 sec
try {
ht.debug = true;
ht.call(SOAP_ACTION, envelope);
...
} catch ...
} catch ...
} catch (XmlPullParserException xe) {
} catch ...
I've been trying for 3 weeks, but it's not working. I've read many many topics, but nothing resolved my problem.