Używam sprawdzania poprawności Hibernate i chciałbym rozwiązać nazwę kategorii w komunikacie o błędzie. Rozważmy następujący prosty scenariusz:Jak dynamicznie rozwiązywać parametry wiadomości za pomocą walidatora Hibernate?
public class Category {
private String name;
}
public class Product {
@HazardousCategoryConstraint(message = "{haz.cat.error}")
private Category category;
private String name;
}
public class InventoryReport {
@Valid
private List<Product> products;
}
ValidationMessages.properties
haz.cat.error={name} is a product in the hazardous category list.
Załóżmy, że mam działającą implementację HazardousCategoryConstraint. Walidator sprawdza nazwę każdej kategorii przed listą zastrzeżonych nazw. Kiedy wołam sprawdzania poprawności (InventoryReport) otrzymuję liczbę błędów, których oczekuję, z wyjątkiem tego samego ciągu. Chciałbym, aby nazwa kategorii została przetłumaczona na każdą wiadomość. Czy ktoś może wskazać mi przykład dynamicznego rozdzielania parametrów lub pokazywania mi, jak to zrobić?
Co poprosić o to: jak umieścić wartość w ciągu komunikat o błędzie? -- czy to jest poprawne? – Ralph
@Ralph - to prawda, ale dokładniej chcę, żeby była dynamiczna. Mam wiele wystąpień kategorii o unikalnych nazwach. –
Ale nazwy, które chcesz umieścić w wiadomości, są znane walidatorowi, prawda? – Ralph