Como validar campos no formulário vaadin made
Estou fazendo um projeto Java com vaadin. No momento, tenho um formulário de registro de usuário assim:
public class RegistrationComponent extends CustomComponent implements View {
public static final String VIEW_NAME = "Registration";
public RegistrationComponent(){
Panel panel = new Panel("Registration Form");
panel.setSizeUndefined();
FormLayout content = new FormLayout();
CheckBox checkBox1, checkBox2, checkBox3;
checkBox1 = new CheckBox("Check Box 1");
checkBox2 = new CheckBox("Check Box 2");
checkBox3 = new CheckBox("Check Box 3");
checkBox1.setRequired(true);
checkBox2.setRequired(true);
TextField mailTextField = new TextField("Email Address");
TextField passwordTextField = new TextField("Password");
TextField confirmPasswordTextField = new TextField("Confirm Password");
final Button submitButton = new Button("Submit");
content.addComponent(mailTextField);
content.addComponent(passwordTextField);
content.addComponent(confirmPasswordTextField);
content.addComponent(checkBox1);
content.addComponent(checkBox2);
content.addComponent(checkBox3);
content.addComponent(submitButton);
content.setSizeUndefined(); // Shrink to fit
content.setMargin(true);
panel.setContent(content);
setCompositionRoot(panel);
//listeners:
submitButton.addClickListener(new Button.ClickListener() {
public void buttonClick(Button.ClickEvent event) {
//
}
});
}
@Override
public void enter(ViewChangeListener.ViewChangeEvent event){
//
}
}
Obviamente, o formulário não faz nada além de ser exibido. O que eu quero fazer é fazer o Vaadin exibir mensagens de erro ao lado dos campos se alguns requisitos não forem atendidos. Os requisitos em si não são tão importantes (digamos que eu queira que o campo de email contenha pelo menos 8 caracteres). O que eu quero saber é: existe alguma maneira embutida simples de fazer isso? Eu estive aqui:https://vaadin.com/api/com/vaadin/data/Validator.html
mas eu não entendo como usar um validador, ou mesmo se é isso que eu quero usar. Eu tenho procurado em todo o google por exemplos de uso, mas até agora sem sucesso. Obrigado pela ajuda!