0

LocalValidatorFactoryBean既存の Spring Boot Web アプリケーションに を追加しようとしています。

私が何を試しても(すぐにリストされます)、他のほとんどのBean(ロギングとブレークポイントの両方で検証された)の後にバリデーターを作成するだけなので、検証されることはありません。

接線的には、クラスパスに hibernate-validator があり、プロパティで javax.validation.constraints を使用しようとしてい@Componentます。

アプリケーション クラスには@Configuration@EnableAutoConfigurationおよびがあり@ComponentScan({"my.package.**"})ます。

  • Bean を使用して application.xml を追加する<bean id="validator" class="org.springframework.validation.beanvalidation.LocalValidatorFactoryBean"/>
  • 上記のbeanをvalidator.xmlに追加して追記@ImportResource("validator.xml")
  • @BeanApplication クラスにnew を追加します。public Validator validator() { return new LocalValidatorFactoryBean(); }
  • @Order(Ordered.HIGHEST_PRECEDENCE)上記に追加@Bean
  • スキャンしたパッケージにBeanValidator を追加@Componentします。
  • それに加え@Orderて。

いずれの場合も、バリデーターは FilterRegistrationBean がビジネスのログ記録を終了した後にのみロードされますが、検証したい Bean は既に作成されており、データ接続やセキュリティの設定などに使用されています。

Spring を使用してから数年が経ちましたが、application.xml ですべてを定義するときにこれらの問題を覚えていません。これは単に spring-boot がサポートしていないものであり、従来の Spring アプリケーション構成に戻る必要がありますか?

すべての Bean を検証するにはどうすればよいですか?

4

1 に答える 1