4

8.2. フェイルファストモード

Spring でこのオプションを構成できる場所を探していますが、これが JSR 303 の一部であるかどうかはわかりません。これは、独自のバリデーター実装の Hibernate 構成であるためです。複数の制約違反がある場合、最初の違反のみを「スロー」したいので、これは重要です。

4

1 に答える 1

6

Spring を使用LocalValidatorFactoryBeanしてバリデーターを設定していると仮定すると、validationPropertyMap属性内でプロバイダー固有の構成プロパティを指定できます。

Hibernate Validator の fail-fast 属性のプロパティ名は「hibernate.validator.fail_fast」であるため、バリデーターを次のように設定します。

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xmlns:util="http://www.springframework.org/schema/util"
  xsi:schemaLocation="
    http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
    http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.1.xsd">

  <bean name="validator" class="org.springframework.validation.beanvalidation.LocalValidatorFactoryBean">
    <property name="validationPropertyMap">
      <util:map>
        <entry key="hibernate.validator.fail_fast" value="true"/>
      </util:map>
    </property>
  </bean>
</beans>
于 2012-06-18T18:14:51.510 に答える