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 TextFieldusername = 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)