Sieht so aus, als ob das dem ähnelt, was ich zuvor erlebt habe, dieser Beitrag half mir. So passen Sie an, dass die Fehlermeldungen zum Zeitpunkt der Bindung nicht fehlschlagen. Aussehen dieser Link Weitere Informationen zum Erstellen einer MessageSource-Bean in Ihrem Anwendungskontext und zum Erstellen eines messages.properties-Ressourcenpakets finden Sie hier:
– Kris
12. Mai 2011 um 19:02 Uhr
Gemäß der javadoc von NotEmpty, Integer ist kein gültiger Typ für die Überprüfung. Es ist für Strings und Sammlungen. Wenn Sie nur sicherstellen möchten, dass eine Ganzzahl einen Wert hat, javax.validation.constraints.NotNull ist alles, was du brauchst.
public @interface NotEmpty
Bestätigt, dass die annotierte Zeichenfolge, Sammlung, Zuordnung oder das Array nicht null oder leer ist.
+1. @NotEmpty, da es proprietär ist, sollte vollständig vermieden werden. Es kann durch @NotNull, @Range und @Size ersetzt werden (je nach Kontext)
– ChssPly76
12. Mai 2011 um 20:43 Uhr
Stimmen Sie zu, wenn möglich, herstellerspezifische Funktionen zu vermeiden, aber es ist kostenlos und Open Source 🙂
– Affe
12. Juli 2012 um 21:08 Uhr
Erstaunlich, wie einfach es ist, ein Integer-Feld versehentlich mit a zu versehen @NotEmpty Anmerkung. Und dann erhalten Sie die wenig hilfreiche Warnung „Es konnte kein Validator für die Einschränkung ‚javax.validation.constraints.Size‘ gefunden werden, der den Typ ‚java.lang.Integer‘ validiert.“
– Michael Piefel
6. Februar 2017 um 15:35 Uhr
Was ausgezeichnet wäre, wäre, wenn es eine Möglichkeit gäbe, eine ausführlichere Fehlermeldung zu erhalten, um zu verstehen, welche Eigenschaft das Problem für die ausgelöste Ausnahme verursacht hat. Wenn das jemand weiß, würde ich mich sehr über eine Antwort freuen. Danke für den Beitrag hat mein Problem gelöst.
– Beezer
4. Oktober 2017 um 14:22 Uhr
@Beezer ConstraintViolationException hat eine zusätzliche Methode getConstraintViolations(), die die Liste der ConstraintViolation-Objekte zurückgibt, die dann jeweils eine Nachricht haben.
– Affe
4. Oktober 2017 um 15:59 Uhr
Da die Frage gestellt wird, verwenden Sie einfach @Min(1) anstelle von @size für ganzzahlige Felder und es wird funktionieren.
Thamaraikannan Rajendran
Wie im Problem angegeben, MÜSSEN Sie zur Behebung dieses Fehlers korrekte Anmerkungen verwenden. Bei obigem Problem @NotBlank oder @NotEmpty Die Anmerkung darf nur auf ein beliebiges Zeichenfolgenfeld angewendet werden.
Verwenden Sie die Anmerkung, um ein langes Feld zu validieren @NotNull.
@NotEmpty kann auch auf Listen oder andere Sammlungen angewendet werden.
– José Anibal Rodriguez
10. September 2021 um 15:27 Uhr
tej
Für diesen Typfehler: UnexpectedTypeException FEHLER: Wir versuchen, eine falsche Hibernate-Validator-Anmerkung für eine Bean-Eigenschaft zu verwenden. Für dasselbe Problem für mein Springboot-Projekt (Validierungstyp ‘java.lang.Integer’)
Die Lösung, die für mich funktioniert hat, ist die Verwendung von @NotNull für Ganzzahl.
Sie können die Abhängigkeit vom Ruhemodus-Validator hinzufügen, um einen Validator bereitzustellen
siehe diese Antwort forum.springsource.org/…
– Bala R
12. Mai 2011 um 18:40 Uhr
Sieht so aus, als ob das dem ähnelt, was ich zuvor erlebt habe, dieser Beitrag half mir. So passen Sie an, dass die Fehlermeldungen zum Zeitpunkt der Bindung nicht fehlschlagen. Aussehen dieser Link Weitere Informationen zum Erstellen einer MessageSource-Bean in Ihrem Anwendungskontext und zum Erstellen eines messages.properties-Ressourcenpakets finden Sie hier:
– Kris
12. Mai 2011 um 19:02 Uhr