0

我有一个返回字符串列表的服务,我需要从 android 客户端调用它,但是出了点问题。事实上,有时我会得到一个强制转换异常和我的应用程序崩溃。这是恢复数据的代码:

SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME);

            SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(
                    SoapEnvelope.VER11);
            envelope.setOutputSoapObject(request);
            envelope.addMapping(NAMESPACE, "vector<soapobject>",
                    new Vector<SoapObject>().getClass());

            HttpTransportSE androidHttpTransport = new HttpTransportSE(URL);

            androidHttpTransport.call(SOAP_ACTION, envelope);

            Vector<SoapObject> result = (Vector<SoapObject>) envelope.getResponse();

            return result;

错误是:

java.lang.ClassCastException: org.ksoap2.serialization.SoapObject cannot be cast to java.util.Vector

在我投射信封.getResponse()的地方。怎么了?

4

1 回答 1

0

试试下面

https://code.google.com/p/ksoap2-android/issues/detail?id=24

查看链接

或者

SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME);
                SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(
                        SoapEnvelope.VER11);
                envelope.setOutputSoapObject(request);
                HttpTransportSE androidHttpTransport = new HttpTransportSE(
                        URL);

                androidHttpTransport.call(SOAP_ACTION, envelope);
                SoapPrimitive response = (SoapPrimitive) envelope
                        .bodyIn;
                webResponse = response.toString();
于 2013-10-12T16:36:57.347 回答