SmartGWT извлечение данных со сложным XML / JSON - PullRequest
1 голос
/ 26 августа 2011

Я использовал источник данных SmartGWT для извлечения данных из веб-службы и помещения их в ListGrid.Это сработало хорошо, потому что не было никаких субэлементов.Однако теперь у меня есть структура XML следующим образом:

<persons>
<person>
    <field1>blah</field1>
    <field2>blah2</field2>
    <tests>
        <test>
            <testName>name</testName>
            <testValue>value</testValue>
        </test>
    </tests>
    <answers>
        <answer>
            <answerField>blah</answerField>
            <answerField2>blah2</answerField2>
        </answer>
    </answers>
</person>

Как бы я использовал источник данных, чтобы поместить поля персон в одну сетку списка, тестовые подэлементы в другую, иответ подэлементов еще в одном?Нет ничего похожего на setSubRecordXPath, и я не вижу, как использование значения XPath также позволило бы мне получать нужные мне данные.Я также не понимаю, как я мог бы использовать несколько источников данных.

Может ли кто-нибудь показать мне, как это сделать, или указать мне ресурс?Все примеры SmartGWT Showcase имели относительно простую структуру (которую я видел).

Если это имеет значение, у меня есть доступ к аннотированным классам JAXB, которые представляют эти различные поля, но я не знаю, как их использоватьв рамках SmartGWT.

1 Ответ

1 голос
/ 02 октября 2014

Вы можете переопределить метод execute DSCallback при вызове метода fetchData источника данных. В основном я использую getAttributeAsRecordArray для тех вещей, которые должны быть логическими записями. Все еще работаем над этим, но пока это выглядит многообещающе.

...