Exemple de zone de texte Wicket
Tutoriel Wicket pour vous montrer comment créer une zone de texte, la valider et transmettre la valeur de la zone de texte à la page suivante.
//Java import org.apache.wicket.markup.html.form.TextField; ... final TextFieldusername = new TextField ("username", Model.of("")); form.add(username); //HTML
1. Exemple de zone de texte Wicket
Une page utilisateur pour afficher une zone de texte via lesTextField de Wicket.
Fichier: 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);
}
}
Fichier: UserPage.html
Wicket TextBox Example - UserPage.html
2. Validateur de nom d'utilisateur
Un validateur de nom d'utilisateur pour vous assurer que la longueur du nom d'utilisateur est comprise entre 5 et 15, et en caractères ou symboles a-z, 0-9, souligné, trait d'union.
Fichier: 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. Afficher la valeur de la zone de texte
Page pour afficher la valeur de la zone de texte à partir deUserPage.html.
Fichier: 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);
}
}
Fichier: SuccessPage.html
Wicket TextBox Example - SuccessPage.html
4. Demo
Démarrer et visiter -http://localhost:8080/WicketExamples/
Si la zone de texte contient une erreur:

Si la zone de texte ne contient aucune erreur, accédez à la page suivante et affichez la valeur de la zone de texte.

Téléchargez-le -Wicket-textbox-examples.zip (8 Ko)