我正在使用DateTextField作为编辑日期字段, 如果用户输入无效日期(例如,输入任何与日期相关的字符) 然后在提交表单上DateTextField在内部根据id。
创建无效的日期消息我的代码是:
form.add(DateTextField.forDatePattern("orderStartDate", new DateModel(new PropertyModel<Date>(this, "defaultModelObject.startDate")), "dd/MM/yyyy"));
现在,如果用户输入任何无效日期,那么在表单提交中,DateTextField会生成消息。
&#34;&#39; orderStartDate&#39;不是有效的日期。&#34;
在留言&#39; orderStartDate&#39;是我在DateTextField上设置的id;
现在我想为上面消息的这个错误创建自定义消息;
答案 0 :(得分:3)
默认值来自public abstract class RajawaliCardboardRenderer extends RajawaliRenderer implements CardboardView.StereoRenderer {
//...
public void changeImage() {};
//...
}
资源包密钥:https://github.com/apache/wicket/blob/77b4df63f44d00e9350068686e4b091f730f167f/wicket-core/src/main/java/org/apache/wicket/Application.properties#L16
您需要在YourApplication.properties中提供一个更具体的覆盖它,例如:
IConverter
答案 1 :(得分:0)
Validators通常会将其类报告给Error对象。当Wicket生成FeedbackMessage时,它会在StringResourceModel中查找它。因此,如果您使用.properties或.properties.xml文件进行措辞,您可能希望使用IConverter的密钥添加FeedbackMessage(报告错误)
<entry key="IConverter.Date">Please use the format dd/MM/yyyy!</entry>
所需FormComponents的相同故事
<entry key="Required">Please provide a value!</entry>
如果有一天你自己编写验证器,请给它一个密钥和可选参数。
private void error(IValidatable<String> validatable) {
ValidationError error = new ValidationError();
error.addKey("id.exists");
error.setVariable("id", valueThatIsNotValid); // variable held in class
ekpCmp.error(error);
}
并定义StringResource
<entry key="id.exists">The value ${id} already exists.</entry>