小编BPu*_*ear的帖子

kSoap2 Android - Cast类异常(SoapObject)

我目前正在尝试使用常规的Ksoap实现从我的webservice中检索一个数组.但是,当尝试访问此数组时,我收到以下logcat错误:

 04-27 00:27:01.772: ERROR/AndroidRuntime(530): Caused by: java.lang.RuntimeException: Unable to 
 start activity ComponentInfo{android.waiter/android.waiter.TablesActivity}: 
 java.lang.ClassCastException: org.ksoap2.serialization.SoapPrimitive
Run Code Online (Sandbox Code Playgroud)

看来,由于某种原因,Soap与我投射我的房产价值的方式并不相符.附件是问题代码(和相关方法)

public static TableDTO[] RetrieveFromSoap(SoapObject soap)
{
    TableDTO[] tables = new TableDTO[soap.getPropertyCount()];
    for (int i = 0; i < tables.length-1; i++) {
        SoapObject pii = (SoapObject) soap.getProperty(i);
        TableDTO table = new TableDTO();
        table.setTableID(Integer.parseInt(pii.getProperty(0).toString())); 
        table.setCapacity(Integer.parseInt(pii.getProperty(1).toString()));
        table.setStatusFlag(pii.getProperty(2).toString());
        table.setCurrentWaiter(pii.getProperty(3).toString());
        tables[i] = table;
    }
    return tables;
}
Run Code Online (Sandbox Code Playgroud)

TableDTO信息:

 @Override
public Object getProperty(int arg0) {
    switch(arg0)
    {
    case 0:
        return TableID;
    case 1:
        return Capacity;
    case 2:
        return StatusFlag;
    case 3: …
Run Code Online (Sandbox Code Playgroud)

android casting class ksoap2

0
推荐指数
1
解决办法
1万
查看次数

标签 统计

android ×1

casting ×1

class ×1

ksoap2 ×1