에러:
org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'bookValidator': Unsatisfied dependency expressed through field 'beanValidator'; nested exception is org.springframework.beans.factory.NoUniqueBeanDefinitionException: No qualifying bean of type 'javax.validation.Validator' available: expected single matching bean but found 2: org.springframework.validation.beanvalidation.OptionalValidatorFactoryBean#0,validator
ㅤ
servlet-context.xml
<beans:bean id="validator"
class="org.springframework.validation.beanvalidation.LocalValidatorFactoryBean">
<beans:property name="validationMessageSource" ref="messageSource" />
</beans:bean>
<beans:bean id="unitsInStockValidator"
class="com.springmvc.validator.UnitsInStockValidator"/>
<beans:bean id="bookValidator" class="com.springmvc.validator.BookValidator">
<beans:property name = "springValidators">
<beans:set>
<beans:ref bean = "unitsInStockValidator"/>
</beans:set>
</beans:property>
</beans:bean>
expected single matching bean but found 2: org.springframework.validation.beanvalidation.OptionalValidatorFactoryBean#0,validator
처음에 정의된 validator과 그 다음에 정의된 bookValidator이 겹쳐서 발생한 문제였다.
ㅤ
validator 부분에 primary="true" 속성을 더한다.
<beans:bean id="validator" primary="true"
class="org.springframework.validation.beanvalidation.LocalValidatorFactoryBean">
<beans:property name="validationMessageSource" ref="messageSource" />
</beans:bean>