2011-11-09 4 views
4

UiBinder로 제작 된 GWT 앱의 현지화는 호스팅 모드에서 작동합니까? 그것은 나를위한 것이 아닙니다. 여기에 내가 무슨 짓을 :UiBinder로 제작 된 GWT 앱의 현지화가 호스트 모드에서 작동하지 않습니다.

1)

< ui:UiBinder xmlns:ui="urn:ui:com.google.gwt.uibinder" 
    ui:generateFormat="com.google.gwt.i18n.rebind.format.PropertiesFormat" 
    ui:generateKeys="com.google.gwt.i18n.rebind.keygen.MD5KeyGenerator" 
    ui:generateLocales="default" 
    xmlns:g="urn:import:com.google.gwt.user.client.ui"> 

    < g:HTMLPanel> 
    < ui:msg description="Hello Description">Hello!< /ui:msg> 
    < /g:HTMLPanel> 
< /ui:UiBinder> 

3) 추가로, GWT 모듈의 XML

< inherits name="com.google.gwt.i18n.I18N"/> 
< extend-property name='locale' values='en'/> 
< extend-property name='locale' values='ru'/> 
< set-property-fallback name="locale" value="en"/> 

2)와 * .ui.xml 파일 Taged 메시지에 로케일 속성을 추가 GWT 컴파일러 옵션 -extra

4) 프로젝트를 컴파일했습니다. 추가 폴더에 .GenMessages.properties 접미사가있는 파일을 찾았습니다.

5) 현지화 된 생성 된 메시지. 각 .GenMessages.properties 파일을 해당 .ui.xml 파일이있는 동일한 폴더에 복사했습니다. 파일 이름에 내 로캘로 이름을 변경했습니다 (예 : .GenMessages_en.properties .GenMessages_ru.properties

6) 프로젝트를 다시 컴파일합니다.

7) 예컨대 http://127.0.0.1:8888/TestLocale.html?gwt.codesvr=127.0.0.1:9997&locale=ru

그것은 아직도 날 자원의 영어 버전을 기본 보여줍니다, 응용 프로그램을 출시하고 확인하기 위해 URL에 로케일 변수를 변경합니다.

무엇이 누락 되었습니까? 어떻게 디버깅 할 수 있습니까? 로그 또는 출력에는 아무 것도 없습니다.

저는 Windows에서 IntelliJ IDEA와 Chrome을 브라우저로 사용하고 있습니다.

감사합니다.

업데이트 :. 내가 모듈 설정에 추가 < set-property name="locale" value="en"/ > 있었기 때문에 그것은 작동하지 않았다 :(아마도이 extend-property 태그에서 값을 무시했다

내가 쓴

단계별는 를 작동하게하는 방법을 설명 경우 누군가에 here 관심입니다. 기본적으로

답변

2

는 GWT는 패키지 이름으로 시작 등록 정보 파일을 생성합니다. 당신은 파일 이름에서 패키지를 제거 했습니까?

한 일 내 GWT 프로젝트에서 가장 잘 작동하는 것은 LocalizableResource_.properties를 파일 이름으로 사용하고 모두 com/google/gwt/i18n/client 패키지에 보관하는 것입니다. Localization with UiBinder

1

에서 GWT 설명서를 확인하십시오. .properties 파일은 클라이언트 패키지 아래에 있지 않아도됩니다. 핵심은 등록 정보 파일을 저장할 위치에 상관없이 패키지가있는 패키지가 모듈 경로에도 있는지 확인하는 것입니다. 내 프로젝트에, 나는 일반적으로 고해상도 패키지에서 특성 파일을 넣어 :

com/project/gwt 
com/project/gwt/client 
com/project/gwt/res 
com/project/gwt/res/strings 

을 다음 메인 인터페이스, 모든 개별 속성은 각 언어 문자열에서 이동을 위해 파일과 함께. module.xml 파일에이 줄이 포함되어 있으면이 작업이 가능합니다.

<source path="res" /> 
관련 문제