Я пытаюсь проверить список объектов в Struts2.
Предположим, у вас есть класс с именем INVOICE
.Он имеет 3 свойства с именем: product, quantity, price
И у меня есть список INVOICE
с именем INVOICES
.
. В файле jsp, если вы выполните итерацию по списку, он сгенерирует этивходные данные.
invoices[0].product
invoices[0].quantity
invoices[0].price
invoices[1].product
invoices[1].quantity
invoices[1].price
Теперь после отправки мне нужно проверить эти значения.
Как видите, Struts2 больше не поддерживает проверку коллекции.http://www.opensymphony.com/webwork/api/com/opensymphony/xwork/validator/validators/CollectionFieldValidator.html
Я нашел способ сделать это с помощью аннотаций.Что-то вроде
@RequiredStringValidator(message="Product name is required")
public void setProduct(String product) {
this.product = product;
}
Но мне не разрешено помещать аннотации проверки на класс бина из-за стандарта кодирования проекта.Потому что мне нужно сохранить СООБЩЕНИЯ в файле свойств.
Я прочитал, что могу выполнить эту проверку с VisitorValidation, как упомянуто здесь.http://struts.apache.org/2.0.11.2/docs/using-visitor-field-validator.html
Но я не мог понять, как это сделать, увидев эти примеры.
Есть ли способ сделать это с использованием только проверочных XML-файлов?Спасибо
ОТВЕТ:
Я сделал это с VisitorFieldValidator, и у меня все еще были проблемы, когда я комментировал правильный ответ.
Проблема ушлакогда я добавляю MyModel-validation.xml
в пакет моей модели.
. Как правильно выделил ответ:
управляйте вашими проверками для ваших моделей в одном месте, где они находятся, рядом с вашей моделью.классы.