액세스하는 방법"locale"value(의 국제화 응용 프로그램)서버 측에서 GWT?

StackOverflow https://stackoverflow.com//questions/25009115

  •  20-12-2019
  •  | 
  •  

문제

Ok,I am 개발을 지원하는 응용 프로그램이 국제화.내가 사용하고 Static String Internationalization 방법을 표시합니다.

게 말하는 내용은 영어와 독일어 버전 -1 일,내가 생성 MyMessages.java 는 모든 메시지에 텍스트는 영어로 작성되었습니다.그때 생성 MyMessages_ge 이는 거의 동일한으로 MyMessages.java 것을 제외하고 텍스트에 기록 독일

-2,에 MyProject.html<meta http-equiv="content-type" content="text/html; charset=UTF-8"> 지 확인하는 것입니다 지원을 모든 언어

-3,에 MyProject.gwt.xml<extend-property name="locale" values="ge"/>

지금 나는 내 응용 프로그램에서 eclipse http://localhost:8888/MyProject.html?gwt.codesvr=127.0.0.1:9997&locale=ge &모 독일어 텍스트로 예상된다.

그러나,내가 알아야 할 내용은 독일 At Server Side.는 것을 의미할 때마다 내 GWT Gui 독일어 버전 다음 서버는 것을 알 languageCode=1 만약 영어에서는 그래서 서버가 사용할 기본 언어 languageCode=0

여기에 무엇을 했습니다.에 HeaderPresenter.java

@Override
public void prepareFromRequest(PlaceRequest request){
    super.prepareFromRequest(request);
    String locale=request.getParameter("locale", "");
    setLanguage(locale); // servercall back here
}

그래서 때 내 응용 프로그램을 처음 실행해야 하는 서버를 알고 있는 언어 Gwt 용

@Override
public SetLanguageResult execute(SetLanguage action, ExecutionContext context)
        throws ActionException {
    String locale=action.getLocale();
    if("ge".equals(locale)){
        Data.languageType=1;
    }
    return null;
}

그러나,그것은 보이지 않는 작동 에 갈 때의 순서 페이지의 url 될 것입니다 http://localhost:8888/MyProject.html?gwt.codesvr=127.0.0.1:9997&locale=ge#!orderPage 지에서 양식 http://localhost:8888/MyProject.html?gwt.codesvr=127.0.0.1:9997#!orderPage;locale=ge 그 이유는 서버에 없을 캡처 locale 값이 있습니다.

나는 생각한 오해 뭔가를 여기에.나는 꽤 복잡하다.

그래서 액세스하는 방법"locale"value(의 국제화 응용 프로그램)서버 측에서 GWT?

도움이 되었습니까?

해결책

거기에는 유틸성 클래스를 다루는 로케일에서 정보를 GWT SDK.할 필요가 없 분석 URL 매개변수를 자신입니다.보 에서는 localeinfo.getCurrentLocale() 다음 사용 getLocaleName() 을 얻을 수있는 방법의 실제 코드에는 문자열을 사용합니다.

내가 확실히 이해하는 방법을 저장하는 로케일 정보를 서버측에서?는 마음블릿 공유하는 사용자 사이에 연결할 수 있는 지역을 세션 또는 통과와 그것의 모든 호출합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top