我有一个Smart GWT项目,其中要在屏幕上显示的数据存储在由客户端和服务器共享的类中。
我在Smart GWT网站上阅读了一些文档,他们已经解释了如何连接到XML或JSON数据源。
我想要做的是将我的POJO与智能GWT小部件相关联。
数据在客户端可用,因此不需要Smart GWT的服务器端数据通信组件(仅在付费版本中可用)。
推荐的实施方法是什么?这样做有什么最佳做法吗?假设我可以使用免费版Smart GWT进行上述操作,我是否正确?
答案 0 :(得分:3)
您必须手动将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);
}
});