GWT -Fehler: Für Typ org.hiberNate.validator.constraints.impl.sizevalidatorForString ist kein Quellcode verfügbar
-
26-10-2019 - |
Frage
Ich versuche, eine clientseitige Validierung für meine GWT-App einzurichten, indem ich den folgenden Link folgen:
http://code.google.com/p/google-web-toolkit/wiki/beanvalidation
... und durch Betrachtung der Validierungsstichprobe in:
http://code.google.com/p/google-web-toolkit/source/browse/trunk/samples/validation
Ich habe genau das gleiche Projekt wie in der Validierungsstichprobe eingerichtet, aber als reguläres GWT -Projekt - nicht Maven verwendet. Ich habe Hibernate-Validator-4.2.0.Final.jar und SLF4J-API-1.6.1.jar sowohl auf meinem Client- als auch auf dem Server-Klassenpfad. Jedoch; Ich bekomme immer noch den folgenden Fehler zur Laufzeit:
No source code is available for type org.hibernate.validator.constraints.impl.SizeValidatorForString; did you forget to inherit a required module?
No source code is available for type org.hibernate.validator.constraints.impl.SizeValidatorForCollection; did you forget to inherit a required module?
No source code is available for type org.hibernate.validator.constraints.impl.SizeValidatorForMap; did you forget to inherit a required module?
Die erwähnten Klassen sind in Hibernate-Validator-4.2.0.final.jar. Deshalb bin ich ein bisschen verwirrt. Könnte es sein, dass die Super-Source-Erklärung in Validierung.gwt.xml Das versteckt die im Glas definierten Klassen?
Lösung
Beachten Sie den Fehler: Es ist nicht so, dass die Klassen, sondern dass die Quelle fehlt. Stellen Sie sicher, dass Sie auch ein Glas mit den Klassen auf dem Client -Klassenpfad haben.
Die Super-Source-Anweisung wird verwendet, um ein Paket zu definieren, das Quelle enthält, mit dem die Client-äquivalente Funktionen für ein Nichtklient-Paket bereitgestellt werden sollten.
Andere Tipps
Sie müssen beide in Ihrem Klassenpfad haben: Hibernate-Validator-4.2.0.final-Sources.jar und Hibernate-Validator-4.2.0.final.jar
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
<version>4.2.0.Final</version>
<classifier>sources</classifier>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
<version>4.2.0.Final</version>
</dependency>