Пример текстового поля калитки
Учебное пособие по калитке, которое покажет вам, как создать текстовое поле, проверить его и передать значение текстового поля на следующую страницу.
//Java import org.apache.wicket.markup.html.form.TextField; ... final TextFieldusername = new TextField ("username", Model.of("")); form.add(username); //HTML
1. Пример текстового поля калитки
Страница пользователя для отображения текстового поля черезTextField Wicket.
Файл: UserPage.java
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.Model;
public class UserPage extends WebPage {
public UserPage(final PageParameters parameters) {
add(new FeedbackPanel("feedback"));
final TextField username = new TextField("username",
Model.of(""));
username.setRequired(true);
username.add(new UsernameValidator());
Form> form = new Form("userForm") {
@Override
protected void onSubmit() {
final String usernameValue = username.getModelObject();
PageParameters pageParameters = new PageParameters();
pageParameters.add("username", usernameValue);
setResponsePage(SuccessPage.class, pageParameters);
}
};
add(form);
form.add(username);
}
}
Файл: UserPage.html
Wicket TextBox Example - UserPage.html
2. Имя пользователя валидатор
Валидатор имени пользователя, чтобы убедиться, что длина имени пользователя составляет от 5 до 15, а также в символах или символах a-z, 0-9, подчеркивание, дефис.
Файл: UsernameValidator.java
package com.example.user; import org.apache.wicket.validation.CompoundValidator; import org.apache.wicket.validation.validator.PatternValidator; import org.apache.wicket.validation.validator.StringValidator; public class UsernameValidator extends CompoundValidator{ private static final long serialVersionUID = 1L; public UsernameValidator() { add(StringValidator.lengthBetween(5, 15)); add(new PatternValidator("[a-z0-9_-]+")); } }
3. Показать значение текстового поля
Страница для отображения значения текстового поля изUserPage.html.
Файл: SuccessPage.java
package com.example.user;
import org.apache.wicket.PageParameters;
import org.apache.wicket.markup.html.basic.Label;
import org.apache.wicket.markup.html.WebPage;
public class SuccessPage extends WebPage {
public SuccessPage(final PageParameters parameters) {
String username = "";
if(parameters.containsKey("username")){
username = parameters.getString("username");
}
final Label result = new Label("result", "Username : " + username);
add(result);
}
}
Файл: SuccessPage.html
Wicket TextBox Example - SuccessPage.html
4. Demo
Начало и посещение -http://localhost:8080/WicketExamples/
Если в текстовом поле есть ошибка:

Если в текстовом поле нет ошибок, перейдите на следующую страницу и отобразите значение текстового поля.

Скачать -Wicket-textbox-examples.zip (8KB)