2011-01-22 6 views
3

JSF 2.0에서 기본 유효성 검사기 메시지를 간편하게 현지화 할 수있는 방법이 있습니까? 열쇠가 뭔지 알아, 나. 예를 들어, "javax.faces.component.UIInput.REQUIRED"하지만, 내가 찾은 모든 것을 바꿀 수있는 유일한 방법은 메시지 묶음에 있고 리소스 번들처럼 로케일 인식이 아닙니다. 나는 또한 이렇게지역화 된 JSF 기본 유효성 검사기

required="true" 

에 대한 기본 검증을 무시할 수있는 방법을 찾을 수 없습니다, 친절하게 필요한 자원 번들을 사용하는 사용자 정의 "필요한"검증을 작성하지 않고 해당 메시지를 지역화하는 방법은 무엇입니까? 아니 너무 많은 일을하지만 난 정말

required="true" 

대신 단지 코드 곤란 등을위한

<h:inputText ... 
    <f:validator ... 
</h:inputText ... 

의 같은 ... 문제는 비록 기본 메시지에 대한 일반적입니다, 필요한 유효성 검사기입니다 예를 들어 언급했다.

JSF 2.0, GFv3.1, JEE6 (서블릿 3.0, EL 2.2, EJB 3.1 등 모든 사람에게 중요 함).

답변

4

로케일 인식이 없다고 어떻게 결론 냈습니까? 확실히 로케일을 인식합니다. JSF 2.0 specification의 2.5.2.4 절에서 정의 된 키로 지역화 된 메시지 사본을 제공하고 <message-bundle>에 메시지 리소스의 기본 이름을 faces-config.xml으로 지정하십시오. 그들은 ResourceBundle에 의해로드되고, name_ll_CC.properties의 동일한 번들 파일 명명 규칙을 준수 할 수 있습니다. ll은 언어 코드이고 CC은 (옵션) 국가 코드입니다.

덧붙여서, 저는 다시 한번 확인했습니다. Mojarra 2.0.3은 영어 (기본값), 독일어, 스페인어, 프랑스어, 일본어, 한국어, 포르투갈어 (브라질), 중국어 및 대만어로 된 메시지 묶음과 함께 제공됩니다. 기본 제공 메시지 번들 중 하나를 사용할 수없는 언어는 무엇입니까?

+0

라트비아어가 필요합니다 ... 어쨌든, 으로 파일을로드하려고 시도했지만 작동하지 않았지만 제대로 작동한다고 말하면 내일 다시 시도합니다. 그것은 등과 같이 과 같아야합니다. 맞습니까? 아니면 내가 잘못하고있는 것일 수도 있습니다 ... – TC1

+0

''요소의 의미는 없습니다. 단지' com.example.Messages'이다. ''은 JSF 변환기/유효성 검증 기가 아닌 * 독자적인 현지화 된 내용 전용입니다. – BalusC

+0

그냥 테스트 해 보았습니다. 매력처럼 작동했지만 루트 템플릿에 loadBundle을 추가해야했지만 그렇지 않으면 코드를 변경하지 않아도되었습니다. 고마워, 대답은 받아 들였다. – TC1

관련 문제