如何在Wicket中向ValidationError添加错误消息

时间:2014-11-20 09:23:17

标签: java validation error-handling wicket wicket-6

在wicket应用程序中,我创建了自己的Validator,它扩展了AbstractFormValidator,我有这样的代码:

StringBuilder errorMessage = new StringBuilder();
...
ValidationError valError = new ValidationError();
valError.addKey("error.close.date.period");
valError.setMessage(errorMessage.substring(1));
component1.error(valError);

但它只显示来自.properties文件的错误消息。如果我删除了addKey("error.close.date.period")行,那么它会显示来自errorMessage StringBuilder的错误。我想显示两个错误。

1 个答案:

答案 0 :(得分:1)

阅读docs for ValidationError,如果找不到使用addKey添加的密钥,则setMessage仅提供回退。你不能同时拥有这两个。您需要使用的是使用setVariable(s)进行变量替换,并使用属性文件中的变量键以及addKey添加的键下提供的错误消息,就像您已经做过的那样。变量替换的作用类似于消息中的$ {variableKey}。