Пример Wicket CompoundPropertyModel
В Wicket «CompoundPropertyModel» аналогичен «http://www.example.com/wicket/wicket-propertymodel-example/[PropertyModel]» и является наиболее часто используемой моделью для привязки компонента формы к объекту. свойство.
Note
Подробности читайте вCompoundPropertyModel article
В следующем примере показано, как использовать CompoundPropertyModel в Wicket.
1. Класс пользователя
Пользовательский класс с двумя свойствами - «имя» и «возраст».
package com.example.user; import java.io.Serializable; public class User implements Serializable{ private String name; private int age; //setter and getter methods }
2. Пример CompoundPropertyModel
Использует «CompoundPropertyModel» для привязки компонентов текстового поля к объекту «user».
package com.example.user; import org.apache.wicket.PageParameters; import org.apache.wicket.markup.html.form.Form; import org.apache.wicket.markup.html.form.TextField; import org.apache.wicket.markup.html.panel.FeedbackPanel; import org.apache.wicket.markup.html.WebPage; import org.apache.wicket.model.CompoundPropertyModel; public class UserPage extends WebPage { private User user = new User(); @SuppressWarnings("serial") public UserPage(final PageParameters parameters) { add(new FeedbackPanel("feedback")); final TextFieldtName = new TextField ("name"); final TextField tAge = new TextField ("age"); Form form = new Form ("userForm", new CompoundPropertyModel (user)) { @Override protected void onSubmit() { PageParameters pageParameters = new PageParameters(); pageParameters.add("name", user.getName()); pageParameters.add("age", Integer.toString(user.getAge())); setResponsePage(SuccessPage.class, pageParameters); } }; add(form); form.add(tName); form.add(tAge); } }
В этом случае,
-
new TextField(“name”) будет привязан к объекту User,name property
-
new TextField(“age”) привязка к объекту User,age property
Скачать -Wicket-CompoundPropertyModel-Examples.zip (8 КБ)