Blog

ExtVal für Bean Validation mit JSR-303 und Apache Ivy

Die Spezifikation „JSR 303: Bean Validation“ kümmert sich um die einheitliche Validierung von Eingabedaten. Trotz der in der Spezifikation beschriebenen Möglichkeiten ist es in manchen Fällen notwendig, von der Referenzimplementierung (Hibernate Validator) abzuweichen. Ein Beispiel dafür ist die fehlende Unterstützung der @Valid-Annotation im Kontext von JSF.

Zum Glück ermöglicht in einem Apache-MyFaces-Projekt die Bibliothek ExtVal die Auswertung von @Valid innerhalb von JSF. Dazu reicht es, die ExtVal-Bibliotheken mit in die Auslieferung aufzunehmen. Baut man die Auslieferung mit Apache Ivy, dann benötigt man ein Repository. Für die aktuelle Version kann man das Apache Snapshot Repository verwenden, welches in ivysettings.xml eingetragen werden sollte:

<ibiblio name="apache.snapshot-repository" root="http://people.apache.org/maven-snapshot-repository/" m2compatible="true" />

Die ExtVal-Bibliotheken müssen in ivy.xml als Abhängigkeiten eingetragen werden:

        <dependency org="org.apache.myfaces.extensions.validator" name="myfaces-extval-core" rev="2.0.4-SNAPSHOT" />
        <dependency org="org.apache.myfaces.extensions.validator.validation-modules" name="myfaces-extval-bean-validation" rev="2.0.4-SNAPSHOT"/>
        <dependency org="org.apache.myfaces.extensions.validator.component-support-modules" name="myfaces-extval-generic-support" rev="2.0.4-SNAPSHOT" />

Auflösen, ausliefern – fertig!

Über den Autor

Simon Zambrovski

Simon Zambrovski ist als Senior Berater der Holisticon AG in Hamburg, BPM-Craftsman, Arhictekt und Entwickler in IT-Projekten unterwegs. Er entwickelte maßgeblich eine Methodologie zur Durchführung von agilen BPM Projekten. Sein aktuelles Interesse gilt der Automatisierung von Geschäftsprozessen, den Event-Driven Microservices und dem Enterprise Architektur Management.

Antwort hinterlassen