Wicket - ListView

<html>
<body>
    
Name Email
</body> </html>
MyPage.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
public class MyPage extends WebPage {
 
    UserDao dao = new UserDao();
 
    private IModel<List<User>> userListModel = new LoadableDetachableModel<List<User>>() {
        @Override
        public List<User> load() {
            List<User> userList = dao.getUsers();
            return userList;
        }
    };
 
    public MyPage(String id) {
        super(id);
 
        ListView listView = new ListView("listView", userListModel) {
            @Override
            protected void populateItem(ListItem item) {
                User user = (User) item.getModelObject();
 
                item.add(new Label("name", user.getName()));
                item.add(new Label("email", user.getEmail());
            }
        };
        listView.setOutputMarkupId(true);
        add(listView);
    }
 
}
User.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
public class User {
 
    private String name;
    private String email;       
    
    public User {
    }
 
    public Long getName() {
        return name;
    }
 
    public void setName(String name) {
        this.name = name;
    }
 
    public Long getEmail() {
        return email;
    }
 
    public void setEmail(String email) {
        this.email = email;
    }
}