나는 Hibernate Validator를 사용하여 폼의 입력 필드를 검증하는 Spring MVC 프로젝트에서 일하고있다. 내 프로젝트는 Maven을 기반으로, 나는이 종속성 추가 :Spring MVC + Hibernate validator : 어떻게 디폴트 에러 메시지를 오버라이드/국제화 할 수 있습니까?
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator-annotation-processor</artifactId>
<version>4.1.0.Final</version>
</dependency>
양식 유효성 검사 프로세스가 잘 작동을하지만 지금은 기본 오류 메시지를 무시하거나 국제화하고 싶습니다.
예를 들어 기본적으로 @NotEmpty 주석을 사용하면 "비어 있지 않을 수도 있습니다"라는 메시지가 나타납니다. 이 메시지를 내 메시지로 어떻게 대체 할 수 있습니까? 프로젝트 클래스 경로
그러나 기본에 ValidationMessages.properties 파일을 생성의 "basename이"속성
- : 나는 몇 가지 솔루션을 시도했습니다 메시지는 여전히 표시됩니다 ...
힌트가 있습니까? Thx 사전에.
감사합니다. 당신의 답은 제가 만족스러운 해결책을 찾는 데 도움이되었습니다. "ValidationMessages.properties"라는 속성 파일을 클래스 경로에 추가해야했습니다. 그런 다음 각 유효성 검사 주석 (예 : org.hibernate.validator.constraints.NotEmpty.message = 내 메시지)을 가리키는 값을 추가하거나 대괄호 사이에 자체 키를 정의하고 속성 파일에서이 키를 사용할 수 있습니다. – kyiu
완벽. 그것을 듣고있어 기쁘게 생각합니다. 천만에요. :-) –
@KHY hiberate validators를위한 일반적인 메시지를 설정하는 것은 정확히 내가했던 것입니다. 또한 인라인 자바 코드로'@NotEmpty (message = "xyz {use.braces.for.bundle.keys}")'를 할 수 있고,'use.braces.for.bundle.keys = Hey guy 'ValidationMessages.properties' 파일의 줄에 중괄호! '를 사용하십시오. 필자의 의견으로는 @Pattern (regexp = "\\ d {4} - \\ d {2} - \\ d {2}", message = "{Invalid.Date.UseYMDFormat } ")' – Patrick