“org.xmlpull.v1.XmlPullParserException:expected:START_TAG”错误

问题描述 投票:2回答:2

在我的应用程序中,我正在访问本地系统中的一些Web服务。当我从我的PC调用这些服务时,这些所有工作的腹肌很好但是当这些服务从另一个系统调用时。在通话中我收到错误

“org.xmlpull.v1.XmlPullParserException:expected:START_TAG”。

这是我的代码:

    public String getAccountsNames(int billId){

        String value = new String();
        System.out.println("Inside getAccountsDetails method...........");
        SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME);
        request.addProperty("billId", billId);

        SoapSerializationEnvelope soapEnvelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
        soapEnvelope.dotNet=true;
        soapEnvelope.setOutputSoapObject(request);
        AndroidHttpTransport androidHttpTransport = new AndroidHttpTransport(URL);
        try
        {
            androidHttpTransport.call(SOAP_ACTION, soapEnvelope);
            SoapPrimitive  resultString = (SoapPrimitive)soapEnvelope.getResponse();
            value = resultString.toString();
            System.out.println("This getAccountsNames xmls is : "+xml);
        }   catch (Exception e) {
            e.printStackTrace ();
        }
        return value;
   }

我也通过设置SoapEnvelope.VER11,VER12,VER10来检查。但每次问题都是一样的。

请建议。谢谢。

android xml web-services soap ksoap2
2个回答
0
投票

当你在其他系统上时,你可能没有得到XML响应。你可以通过这种方式看到你得到的东西:

androidHttpTransport.debug = true;
// ...
// execute the request
// ...
androidHttpTransport.responseDump; // <-- a string containing server response

另外:不是这可能是问题,但AndroidHttpTransport已被弃用,你应该使用HttpTransportSE


0
投票

AndroidHttpTransport androidHttpTransport = new AndroidHttpTransport(URL);

我有一个类似的问题,因为我意外地插入了我的NAMESPACE地址而不是URL,这是不同的。当我把它切换回来时,它起作用了。

作为补充建议,如果您没有看到您的参数正确传递,请尝试排除该行:

soapEnvelope.dotNet = TRUE;

对我来说,我有一个布尔值,它一直被传递为false,直到我评论该行为止。

© www.soinside.com 2019 - 2024. All rights reserved.