我正在使用自己的验证,但是应该在检票口中突出显示或自定义表单的视图(例如,如果组件无效)...
所以例如我有我的检票表格
<form wicket:id="inputForm">
<p>
<label for="Recipient">Recipient</label>
<input wicket:id="Recipient" id="Recipient" type="text" size="40"/>
</p>
<p>
<label for="Details">Details</label>
<input wicket:id="Details" id="Details" type="text" size="40"/>
</p>
</form>
然后我有我的 Form.java:在这里我设置我的 Java 对象“发票”的值并使用onValidateModelObjects来覆盖检票口验证并使用我自己的验证......这个方法只是调用一个简单的自己创建的 ValidatorObject 来处理验证...
public InvoiceForm() {
...
Form<Invoice> form = new Form("inputForm", formModel) {
/*
* Validation takes place here
*/
@Override
public void onValidateModelObjects() {
ValidationProcess vp = new ValidationProcess();
vp.validate("Rules.js", r);
msg = "";
if (vp.getConstraintViolations().size() > 0) {
for (String s : vp.getConstraintViolations()) {
msg = msg + s;
}
} else {
msg = "no errors.";
}
}
};
//adding Textfields to the Form etc...
...
}
我需要什么:上面你可以看到我的错误消息将被保存到 msg 字符串中!现在我想要的是 Wicket 获取此字符串并将其应用于 Wicket FeedBackMessage 系统,或者......
- 我需要获取此刻将要渲染的组件...
- 我必须将此组件的错误消息设置为我的组件...
我怎样才能做到这一点?
我想我需要重写一些方法,但我不知道哪些方法和在哪里......