Smart GWT - как использовать POJO в качестве источника данных для поля со списком / вкладка / метки - PullRequest
1 голос
/ 01 марта 2012

У меня есть проект Smart GWT, в котором данные, которые должны отображаться на экране, хранятся в классе, который используется клиентом и сервером.

Я прочитал некоторые документы на веб-сайте Smart GWT, где они объяснили, как подключаться к источникам данных XML или JSON.

Я хочу связать мой POJO с виджетом Smart GWT.

И данные доступны на стороне клиента, поэтому компонент передачи данных Smart GWT на стороне сервера (который доступен только в платных выпусках) не нужен.

Каков рекомендуемый способ реализации этого? Есть ли лучшие практики при этом? И правильно ли я, если могу предположить, что смогу сделать это с помощью бесплатной версии Smart GWT?

1 Ответ

3 голосов
/ 23 марта 2012

Вы должны вручную добавить поля POJO в атрибуты записи. Мы не можем просто передать объект как значение в сетке. Я сделал это так:

greetingService
            .getUsersList(new AsyncCallback<ArrayList<UserForRPC>>() {
                public void onFailure(Throwable caught) {
                }
                public void onSuccess(ArrayList<UserForRPC> result) {
                    ListGridRecord[] listUsers = new ListGridRecord[result.size()];
                    int recordNum = 0;
                    for (UserForRPC user : result) {
                        ListGridRecord record = new ListGridRecord();
                        record.setAttribute("id", user.getId());
                        record.setAttribute("firstName", user.getFirstName());
                        record.setAttribute("lastName", user.getLastName());
                        record.setAttribute("login", user.getLogin());
                        record.setAttribute("password", user.getPassword());
                        record.setAttribute("email", user.getEmail());
                        record.setAttribute("role", user.getRole());
                        record.setAttribute("organization", user.getOrganization());
                        listUsers[recordNum++] = record;
                    }
                    usersGrid.setData(listUsers);
                }
            });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...