问题描述
我耗费了基于SOAP的Web服务
使用 ksoap2
,并接收从WebService,这是我在
。 SoapObject
正在存储JSON响应
I am consuming a SOAP based web-service
using ksoap2
, and receiving a JSON response
from the webservice, which I am storing in a SoapObject
.
接下来的步骤是的解析 JSON 的。对于我试图从响应SoapObject获得每个属性
并将其存储在另一个 SoapObject
,进行进一步的处理(像获得名称
和值
等)
The next step is to parse the JSON
. For that I am trying to get each property
from the response SoapObject and store it in another SoapObject
, for further processing (like getting the name
and value
etc.)
SoapObject soapObjectEach= (SoapObject) postResult.getProperty(i);
但我在这个声明得到一个例外 java.lang.ClassCastException:org.ksoap2.serialization.SoapPrimitive不能转换为org.ksoap2.serialization.SoapObject
postResult是SoapOject。这说明我postResult.getProperty()可能会返回一个SoapPrimitive?但我几乎可以肯定,这是不是这种情况,作为文档说,返回所需属性
postResult is a SoapOject. This suggests me that postResult.getProperty() probably returns a SoapPrimitive? But I am almost certain that it is not the case, as the documentation says, "Returns the desired property"
所以任何人可以提出关于它的东西吗?的我已经看到了这个其他问题(1, 2)但没有得到一个满意的答案。
So can anybody suggest something about it? I have seen other questions about this (1, 2) but did not get to a satisfactory answer.
推荐答案
让您diagonize code:
Lets diagonize your code:
SoapObject soapObjectEach= (SoapObject) postResult.getProperty(i);
至于你说postResult是soapobject。而从上的getProperty文件说:
As you said postResult is a soapobject. And from the documentation on getproperty says:
getProperty
public java.lang.Object getProperty(int index)
Returns a specific property at a certain index.
Specified by:
getProperty in interface KvmSerializable
Parameters:
index - the index of the desired property
Returns:
the desired property
使用getProperty返回的指数,而不是一朝一夕所能始终被铸造成soapobject财产。从你的异常,我们可以看到它返回类型soapprimitive的对象。因此,解决方案是类似的东西this帖子。
这篇关于ClassCastException异常:SoapPrimitive不能转换到SoapObject(显然没有SoapPrimitive这里)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!