[SPRING] Hibernate + Spring에서 커스텀 검증 메시지를 사용하라.
SPRINGHibernate + Spring에서 커스텀 검증 메시지를 사용하라.
나는 대답에서 단계를 시도했다 : Hibernate Validator, 커스텀 ResourceBundleLocator와 Spring
하지만 여전히 메시지 대신 {location.title.notEmpty}를 출력으로 사용합니다.
dispatcher-servlet.xml
<bean name="validator"
class="org.springframework.validation.beanvalidation.LocalValidatorFactoryBean">
<property name="validationMessageSource">
<ref bean="resourceBundleLocator"/>
</property>
</bean>
<bean name="resourceBundleLocator" class="org.springframework.context.support.ReloadableResourceBundleMessageSource">
<property name="basenames">
<list>
<value>/WEB-INF/validationMessages</value>
</list>
</property>
</bean>
/WEB-INF/validationMessages.properties:
location.title.notEmpty=My custom message
서식 (클래스 위치)
@NotEmpty( message = "{location.title.notEmpty}" )
private String title;
여기서 뭐가 잘못 됐어?
해결법
-
==============================
1.알았다! :-)
알았다! :-)
Dispatcher-servlet.xml에 위의 두 가지 대신 다음 bean을 추가했습니다.
<bean id="messageSource" class="org.springframework.context.support.ReloadableResourceBundleMessageSource"> <property name="basename" value="/WEB-INF/validationMessages" /> </bean>
그런 다음 my validationMessages.properties에서 다음 구문을 사용했습니다.
NotEmpty.location.title=My custom Message
나는 이것이 이유라고 생각한다. Hibernate 유효성 검사 주석 (javax가 아닌)을 사용했다.
그리고 일반적으로 메시지 파일의 구문은 다음과 같아야합니다.
[ConstraintName].[ClassName].[FieldName]=[Message]
이것이 다른 사람들을 도와 줄 수 있기를 바랍니다 .-)
그리고 스프링 컨트롤러에서 메시지에 액세스하려면 @Autowired private MessageSource messageSource를 추가하십시오. 클래스 필드로 사용하고 messageSource.getMessage 메소드를 사용하십시오. 나는 하나의 로케일을 사용하기 때문에 messageSource.getMessage ( "NotEmpty.location.title", null, null)를 사용했다.
from https://stackoverflow.com/questions/9232284/use-custom-validation-messages-in-hibernate-spring by cc-by-sa and MIT license
'SPRING' 카테고리의 다른 글
[SPRING] 데이터베이스 값을 가진 Spring 태그를 덮어 쓴다. (0) | 2019.01.18 |
---|---|
[SPRING] Spring 데이터와 mongodb - @Transactional 내에서 스프링으로 간단한 롤백 (0) | 2019.01.18 |
[SPRING] 프로그래밍 방식으로 Spring Framework 작업 생성하기 (0) | 2019.01.18 |
[SPRING] 맞춤 Zuul 필터 만들기 (0) | 2019.01.18 |
[SPRING] Spring 5 webflux Webclient에서 시간 초과를 설정하는 방법 (0) | 2019.01.18 |