Nu utilizaţi Apache ca furnizor implicit în descriptorul de implementare

Această regulă semnalează toate referinţele la pachetele org.apache.bval.jsr* (bval 1.1) şi org.apache.bval.jsr303* (bval 1.0) din descriptorii de implementare validation.xml. Bean Validation 2.0 și versiunile ulterioare utilizează implementarea Hibernate Validator în locul implementării Apache BVal, care era utilizată pentru Bean Validation 1.0 și 1.1. Scanerul de sursă furnizează o corecţie rapidă care suprascrie configuraţia pentru a folosi clasele Hibernate Validator.

De exemplu, având în vedere următoarele elemente din fişierul validation.xml:

<default-provider>org.apache.bval.jsr.ApacheValidationProvider</default-provider>
<message-interpolator>org.apache.bval.jsr.DefaultMessageInterpolator</message-interpolator>
<traversable-resolver>org.apache.bval.jsr.resolver.DefaultTraversableResolver</traversable-resolver>
<constraint-validator-factory>org.apache.bval.jsr.DefaultConstraintValidatorFactory</constraint-validator-factory>
<parameter-name-provider>org.apache.bval.jsr.parameter.DefaultParameterNameProvider</parameter-name-provider>

Corecţia rapidă suprascrie valorile folosind valorile Hibernate Validator:

<default-provider>org.hibernate.validator.HibernateValidator</default-provider>
<message-interpolator>org.hibernate.validator.messageinterpolation.ResourceBundleMessageInterpolator</message-interpolator>
<traversable-resolver>org.hibernate.validator.engine.resolver.DefaultTraversableResolver</traversable-resolver>
<constraint-validator-factory>org.hibernate.validator.engine.ConstraintValidatorFactoryImpl</constraint-validator-factory>

parameter-name-provider implicit este o clasă de pachete interne org.hibernate.validator.internal.engine.DefaultParameterNameProvider. Corecţia rapidă şterge setarea, astfel încât este utilizată setarea implicită.

Pentru mai multe informaţii despre configurarea validării în WebSphere Liberty, vedeţi documentaţia Bean Validation 2.0.