android:ksoap2 org.xmlpull.v1.XmlPullParserException:预期:开始标记异常

android:ksoap2 org.xmlpull.v1.XmlPullParserException:预期:开始标记异常,android,exception,ksoap2,Android,Exception,Ksoap2,我正在尝试从web服务获取响应。然而,我得到了一些异常错误:主要是这一个 org.xmlpull.v1.XmlPullParserException: expected: START_TAG {http://schemas.xmlsoap.org/soap/envelope/}Envelope (position:START_TAG <html>@1:6 in java.io.InputStreamReader@40524b78) } 有人能告诉我我是不是做错了什么吗。。另一个非

我正在尝试从web服务获取响应。然而,我得到了一些异常错误:主要是这一个

org.xmlpull.v1.XmlPullParserException: expected: START_TAG {http://schemas.xmlsoap.org/soap/envelope/}Envelope (position:START_TAG <html>@1:6 in java.io.InputStreamReader@40524b78) 
}

有人能告诉我我是不是做错了什么吗。。另一个非常重要的问题: 有人能告诉我为什么我不能在这里使用getProperty0或getProperty1方法。我应该从webservice获得两个字符串作为响应,但我不能将getPropertyindex与SoapPrimitive一起使用。。 欢迎所有建议
谢谢

我不确定这是否是您需要的确切解决方案,但这对我有效,我以前也遇到过同样的问题,但需要5个参数,我刚刚使用SoapObject添加了3个参数,因此它会给出这种类型的错误,因此请确保您使用request.addPropertytest添加了所有必需的参数,在调用此Web服务之前进行测试。

首先将您的url更改为http://mysession.com/myservice.asmx.After 请检查您的SOAP\u操作、方法\u名称和命名空间是否正确,通常是SOAP\u操作=命名空间+方法\u名称。
public class MyWebService extends Activity {

private static final String SOAP_ACTION ="http://www.mywebsite.com/myMethod";
private static final String METHOD_NAME = "MyMethod";
private static final String NAMESPACE = "http://www.myNamespace/";
    private static final String URL = "http://mysession.com/myservice.asmx?WSDL";


@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    try {
        SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME);

        PropertyInfo pi = new PropertyInfo();   
        pi.setName("Parameter 1");
        pi.setValue(1);
        pi.setType(pi.INTEGER_CLASS);
        request.addProperty(pi);

        PropertyInfo pi2 = new PropertyInfo();  
        pi2.setName("Parameter 2");
        pi2.setValue("Any string");
        pi2.setType(pi2.STRING_CLASS);
        request.addProperty(pi2);

        SoapSerializationEnvelope envelope = new  SoapSerializationEnvelope(SoapEnvelope.VER11);
        envelope.dotNet=true;
        envelope.setOutputSoapObject(request);

        HttpTransportSE androidHttpTransport = new HttpTransportSE(URL);
        androidHttpTransport.call(SOAP_ACTION, envelope);                   
        //SoapObject result=(SoapObject)envelope.getResponse();             
        SoapPrimitive  result = (SoapPrimitive) envelope.getResponse();
        String resultData = result.toString();

        //String string1=result.getProperty(0).toString();
        //String string2=result.getProperty(1).toString();

        Log.v("WEBSERVICE","RESPONSE: "+resultData);
    } catch (Exception e) {
        e.printStackTrace();    

    }        
}