Всегда ли свойства SOAP встречаются в одном и том же порядке? - PullRequest
1 голос
/ 13 января 2012

Я использую ksoap2 для доступа к службе Azure, и мне нужно получить свойства довольно сложного объекта. Это выглядит как

<a:top xmlns:a="http://anamespace.org/" xmlns:b="http://bnamespace.org">
    <b:middle>
        <b:bottom>value</b:bottom>
        <b:derriere>value2</b:derriere>
    </b:middle>
    <b:muddle>other</b:muddle>
</a:top>

Теперь я хочу получить свойства по имени, но SoapObject.getProperty(String) не позволяет указать пространство имен. Подэлементы имеют пространство имен, отличное от верхнего элемента. С другой стороны, объявление объекта KVMSerializable предполагает, что свойства могут быть введены в объект по индексу и в порядке . Тем не менее, мой опыт работы с XML показывает, что

<a:top xmlns:a="http://anamespace.org/" xmlns:b="http://bnamespace.org">
    <b:muddle>other</b:muddle>
    <b:middle>
        <b:bottom>value</b:bottom>
        <b:derriere>value2</b:derriere>
    </b:middle>
</a:top>

обычно так же действителен. Это неправда для SOAP? Всегда ли элементы SOAP встречаются только в одном порядке, и можно ли на них полностью полагаться?

1 Ответ

1 голос
/ 17 января 2012

С последней версией 2.6.1 ksoap2-android, которую я сократил вчера, порядок становится значительным. Проверьте это.

...