如何在Android上解析用ksoap检索的对象列表?

时间:2010-11-23 12:46:21

标签: android web-services soap ksoap2

我有一个soap webservice,返回这样的内容:

ListResult{id=123;
result=ListItem{currencyID=2; currencyISO=EUR; desc=description; hasEMagazine=true; hasPrintMagazine=true; incentiveB=0; incentiveE=1000; objectCatalogID=123; objectID=12345; objectTypeID=1; picURL=url; priceB=222 ; priceRB=anyType{};0 sortID=0; title=title; uniqueProductAttrID=0; };
result=ListItem{currencyID=2; currencyISO=EUR; desc=description; hasEMagazine=true; hasPrintMagazine=true; incentiveB=0; incentiveE=1000; objectCatalogID=123; objectID=12345; objectTypeID=1; picURL=url; priceB=222 ; priceRB=anyType{};0 sortID=0; title=title; uniqueProductAttrID=0; };
result=ListItem{currencyID=2; currencyISO=EUR; desc=description; hasEMagazine=true; hasPrintMagazine=true; incentiveB=0; incentiveE=1000; objectCatalogID=123; objectID=12345; objectTypeID=1; picURL=url; priceB=222 ; priceRB=anyType{};0 sortID=0; title=title; uniqueProductAttrID=0; };

现在我想生成一个这个对象的结果列表。我得到一个具有20个属性的结果对象,如果我检索其中一个属性,我得到一个包含整个ListItem作为字符串的SoapPrimitive。

是否有一种优雅的方法可以从这个SoapPrimitive对象中检索所需的值而无需手动解析字符串?

2 个答案:

答案 0 :(得分:2)

是的,请看这个链接

Web Service That Returns An Array of Objects With KSOAP

希望它有所帮助。

答案 1 :(得分:0)

我最终使用反射。我传入一个空的输出对象迭代所有字段,以查看其中一个字段是否包含在soap结果中。有关代码示例,请查看此tutorial