Android 用webService产生java.lang.ClassCastException: org.ksoap2.serialization.SoapPrimitive错误的解决 .

时间:2021-05-12 15:51:38

在做android Webservice开发的时候一般情况下大家接受webservice服务器返回值的时候都是使用
SoapObject soapObject = (SoapObject) envelope.getResponse();这个来接受返回来的值,但这种方法往往会产生Java.lang.ClassCastException: org.ksoap2.serialization.SoapPrimitive这样的错误。

根据本人的实际操作跟别人的帮助,终于解决了这个问题。

在服务器端返回值是String类型的数值的时候使用SoapObject soapObject = (SoapObject) envelope.getResponse();和 SoapObject result = (SoapObject)envelope.bodyIn;这两种方法来接受值都会报出

java.lang.ClassCastException: org.ksoap2.serialization.SoapPrimitive这样的错误。

解决方法:

Object object = (Object)envelope.getResponse();就可以解决这种错误。

使用.toString() 就是返回的结果

各位感兴趣的话,可以参阅:

参考1:http://blog.csdn.net/windzou36/article/details/7315898

参考2:http://blog.csdn.net/whybiang/article/details/6533051

参考3:
http://topic.csdn.net/u/20110727/11/fbce9413-686c-4227-bb23-c74d7b9a9f0a.html