Spring-3.1.0.GA を使用してサービス (Web アプリケーションではない) を開発しています。サービス入力を検証するために、Spring と共に hibernate-validator を使用したいと考えています。
以下を使用して Bean 検証サポートを有効にしました。
<bean id="validator"
class="org.springframework.validation.beanvalidation.LocalValidatorFactoryBean"/>
<bean class="org.springframework.validation.beanvalidation.MethodValidationPostProcessor"/>
サービス インターフェイスに @Validated のアノテーションを付け、メソッド パラメータに @NotNull、@Size、@Valid などのアノテーションを付けましたが、正常に動作しています。
しかし、検証グループに基づいて、自分のパラメーター、たとえば顧客を検証する必要があります。@Validated または @Validated(Group1.class) でメソッド パラメーターに注釈を付けると、Spring は検証を実行しません。
@Valid で注釈を付けると、検証が行われますが、デフォルトの検証グループが使用されます (予想どおり)。
さまざまなメソッドがさまざまなグループで動作するため、インターフェイス レベルで @Validate(Group1.class) に注釈を付けることはできません。
グループをサポートする Spring と hibernate-validator を使用して、サービス層の検証を実行するにはどうすればよいですか?