Как разобрать в андроид приложение arraylist от php webservice

1
public static UserFriendListContainer getFriendList(SoapObject wizardobject)//TESTED
    {
        UserFriendListContainer container= new UserFriendListContainer();


        List<UserFriendListModel> list= new ArrayList();    

        String currobj= wizardobject.getProperty("FriendListResult").toString();

        Log.v("CurrentObjet+++++++",currobj.toString());




        container.setParserResult(currobj);



        SoapObject result = (SoapObject)wizardobject;
        for(int i=0;i<result.getPropertyCount();i++)
        {

                SoapObject object = (SoapObject)wizardobject.getProperty(i);//here it is break

Log.v("result:::::",result.toString());
                Log.v("obj:::::",object.toString());
                Log.v("friendID",object.getProperty("friendid").toString());
                String friendID=object.getProperty("friendid").toString();

                Log.v("friendname",object.getProperty("friendname").toString());
                String friendname=object.getProperty("friendname").toString();

                Log.v("lastaction",object.getProperty("lastaction").toString());
                String lastaction=object.getProperty("lastaction").toString();

                Log.v("friendphoto",object.getProperty("friendphoto").toString());
                String friendphoto=object.getProperty("friendphoto").toString();

                UserFriendListModel model=new UserFriendListModel();
                model.setfriendID(friendID);
                model.setfriendName(friendname);
                model.setfriendPhoto(friendphoto);
                model.setLastAction(lastaction);

                list.add(model);
            }
            container.setList(list);

        return container;
    }

}

-----
<message name="FriendListRequest"/>
<message name="FriendListResponse">
<part name="FriendListResult" type="tns:FirendListArray"/>
</message> 

моя xml-часть из webservice - это то, что один. Я пытаюсь получить доступ к моему списку друзей путем парсинга. Я не мог понять.. Когда им отладка была нарушена в "SoapObject object = (SoapObject) wizardobject.getProperty(i)".. Я хочу знать, как могу ли я разобрать один список, который я беру из webservice? Спасибо за вашу помощь заранее...

Теги:
soap
web-services
xml-parsing

2 ответа

1
Лучший ответ
public static UserFriendListContainer getfriendlist(SoapObject wizardobject) throws XmlPullParserException, IOException {

        UserFriendListContainer container= new UserFriendListContainer();
        UserFriendListModel model = new UserFriendListModel();

         List<UserFriendListModel> list= null;
          list=new ArrayList<UserFriendListModel>();
        Vector vector = (Vector) wizardobject.getProperty("FriendListResult");

          Log.v("vector+++++++",vector.toString());
          System.out.println("vectorsize+++++++"+vector.size());

          int count=vector.size();


          for (int i = 0; i <count; ++i) { 

        SoapObject test=(SoapObject)vector.get(i);


          Log.v("test+++++++",test.toString());  

               Log.v("friendid",test.getProperty("friendid").toString());
                String friendID=test.getProperty("friendid").toString();

                Log.v("friendname",test.getProperty("friendname").toString());
                String friendname=test.getProperty("friendname").toString();

                Log.v("lastaction",test.getProperty("lastaction").toString());
                String lastaction=test.getProperty("lastaction").toString();

                Log.v("friendphoto",test.getProperty("friendphoto").toString());
                String friendphoto=test.getProperty("friendphoto").toString();

                model.setfriendID(friendID);
                model.setfriendName(friendname);
                model.setfriendPhoto(friendphoto);
                model.setLastAction(lastaction);

                list.add(model);
            }
            container.setList(list);
            System.out.println("List==="+list);


         return container;
    }

Привет, ребята, После стольких усилий я нашел свой ответ. Я могу разобрать свой массив с кодом выше. Спасибо за интерес.

0

Вы уверены, что wizardobject.getProperty(i)

возвращает SoapObject?? Я бы попробовал с помощью String или просто отлаживал его, не делая кастинг, и посмотрел, какой он объект.

Проверьте это → Документация SoapObject

Кстати, это удобно, если вы отправляете трассировку стека ошибок.

  • 0
    06-03 11: 49: 17.187: V / ОТВЕТ НА getFriendList: (275): FriendListResponse {FriendListResult = [FirendList {friendid = 1; friendphoto = profile1.jpg; friendname = Онур Энис Боздемир; lastaction = Giriş Yaptı - (5 дней); }, FirendList {friendid = 3; friendphoto = profile5.jpg; имя друга = тестовый тест; lastaction = Giriş Yaptı - (5 дней); }]; } 06-03 11: 49: 31.159: D / SntpClient (58): сбой времени запроса: java.net.SocketException: семейство адресов не поддерживается протоколом в моем журнале регистрации. У меня есть эти результаты ... Я не могу взять свой список

Ещё вопросы

Сообщество Overcoder
Наверх
Меню