NSMutableArray an Webservice senden

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • NSMutableArray an Webservice senden

    Hallo zusammen,

    ich habe folgenden Code (SOAP-Message gekürzt, weil irrelevant)

    Quellcode

    1. NSData *data = [NSKeyedArchiver archivedDataWithRootObject:livepunktearray];
    2. NSString* arraystring = [[NSString alloc] initWithData:data
    3. encoding:NSUTF8StringEncoding];
    4. // NSString *arraystring = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]; //
    5. NSString *soapMessage = [NSString stringWithFormat:
    6. @"*snip**Snap*" "<pointsarray>%@</pointsarray>\n"
    7. "*snipsnap*</soap:Envelope>\n", arraystring
    Alles anzeigen



    Der Insider mag erahnen, dass der übermittelte String (arraystring) NULL ist. Kann mir jemand sagen, warum? Während des Debuggens werden mir im "livepunktearray" 3 Objekte angezeigt, das data und der arraystring sind auch gefüllt (mit ein paar hundert Bytes) , aber in der soapMessage wird NULL übertragen und arraystring ist LEER.

    Wieso?

    Danke!
  • Hallo,

    ich denke es liegt an der Umwandlung von NSMutableArray -> NSData (bis hierhin ok) -> NSString mit encoding.
    Die Methode liefert nil zurück, wenn etwas mit dem encoding schief gelaufen ist.

    Bist Du sicher, dass bei Dir der arrayString vorhanden ist? Schwer vorstellbar, dass von einer Zeile zur nächsten der String abhanden gekommen ist.

    Bernd
  • fredn2 schrieb:

    Oh weia. Ja gritsch, Dein Tipp brachte mich dazu, noch was ganz anderes zu probieren, nämlich einfach das komplette Array zu senden. Und siehe da...es geht...

    "NSPoint: {118, 388}",

    "NSPoint: {284, 378}",

    "NSPoint: {227, 488}",




    ich würd aber nicht die array-description verwenden sondern den string selbst erstellen (so sonst hast du die NSSPoint dabei und die descriotion kann sich ändern)