在wicket中添加.properties文件

时间:2012-07-27 07:14:08

标签: wicket

我正在使用wickets 1.5。我有注册页面,其中fileds必须仅对数字进行验证(如电话号码)。我有一个验证类,如下所示

public class Validator implements IValidator<String> {
        Pattern pattern;
        public Validator() {
        pattern = Pattern.compile("[0-9]+");
        }

        public void validate(IValidatable<String> validatable) {
        final String field = validatable.getValue();

        if (pattern.matcher(field).matches() == false) {

            error(validatable, "phoneno" );
        }

        }

    private void error(IValidatable<String> validatable, String errorKey) {
    ValidationError error = new ValidationError();
    error.addMessageKey(getClass().getSimpleName() + "." + errorKey);
    validatable.error(error);
    }

}

我的Register.properites文件位于Registation.html和.java文件所在的同一个包中。 我的 Registration.properites

Registration.phoneno =请仅输入数字

我在我的检票口班中称呼这个 phoneno.add(新的Validator());

我收到以下错误

找不到组件的错误消息:TextField @ sendform:phoneno and error:[ValidationError message = [null],keys = [Validator.phoneno],variables = [null]]。尝试过的密钥:phoneno.Validator.phoneno,Validator.phoneno。

我做错了什么? 我按照以下链接完成了这项工作 http://www.mkyong.com/wicket/create-custom-validator-in-wicket/

1 个答案:

答案 0 :(得分:2)

我认为您没有正确指定属性键。当您的密钥以“注册”开头时,getClass().getSimpleName()方法返回“Validator”。试试这个:

error.addMessageKey("Registration.phoneno");