Search code examples
androidwsdlksoap2

How to process an array returned by a wsdl?


I am using ksoap2 in order to extract an array of strings from a wsdl based webservice(for an android app). How do I process the returned array? I need those 3-4 lines of code which will let me save and use that returned array in my class. Thanks.


Solution

  • String r = NameArray.columncount("userid", limitstart, loadNumber,loggername);
    String temp = r.replaceAll(";\\s", ",").replaceAll("string=", " ")
                    .replace("anyType{", "").replace(",}", "");
    String[] fulname = temp.split(",\\s+");
    

    'NameArray.columncount' is my function which gets the array from the wsdl(don't get confused in that)

    step 1- Here I am getting the array values returned from the wsdl in to a string called 'r'.In this case I am getting an array of numbers Returned array string r looks like this

    r ="anyType{string=10054; string=10055; string=10056; string=10035; string=10052; string=10036; string=10037; string=10038; }"

    step 2- Then creating a String variable called temp where I am removing all the unwanted characters using the replaceAll function. after removing unwanted characters temp looks like this

    temp="10054, 10055, 10056, 10035, 10052, 10036, 10037, 10038"

    step3- Finally created a string array called 'fulname' and split the modified string with ',\s' Array fulname after split looks like this

    fulname = [ 10054, 10055, 10056, 10035, 10052, 10036, 10037, 10038]

    This will work fine because all the wsdl array return the same type of string with same unwanted characters

    Hope you understood Good Luck