호출 로케일 및 시간대 액세스
호출 국제화 컨텍스트의 요소에 액세스하려면 이 태스크를 수행하십시오.
시작하기 전에
애플리케이션 컴포넌트는 먼저 국제화 오브젝트에 대한 참조를 분석한 다음 국제화 컨텍스트 API의 국제화 인터페이스에 바인드해야 합니다.
이 태스크 정보
서블릿 서비스 또는 EJB(Enterprise JavaBeans) 비즈니스 메소드의 모든 원격 호출에는 해당 호출을 실행 중인 스레드와 연관된 호출 국제화 컨텍스트가 있습니다. 호출 컨텍스트는 서블릿과 비즈니스 메소드 구현이 실행하는 국제화 컨텍스트입니다. 국제화 서비스와 미들웨어에 의해 다음 호출에서 전파됩니다. 이 태스크는 웹 서비스 클라이언트 프로그램에도 적용됩니다.
프로시저
예
다음 코드 예제에서 로케일(en,GB) 및 단순 시간대(GMT)가 투명하게 myBusinessMethod
메소드에 대한 호출에 전파됩니다. myEjb와 같은, 서버 측 애플리케이션 컴포넌트는 이 컨텍스트 요소를 얻기 위해 InvocationInternationalization
인터페이스를 사용할 수 있습니다.
...
//--------------------------------------------------------------------
// Set the invocation context under which the business method or
// servlet will run and propagate on subsequent remote business
// method invocations.
//--------------------------------------------------------------------
try {
invocationI18n.setLocale(new Locale("en", "GB"));
invocationI18n.setTimeZone(SimpleTimeZone.getTimeZone("GMT"));
}
catch (IllegalStateException ise) {
// Is the component CMI; is the service started and enabled?
}
myEjb.myBusinessMethod();
CMI 애플리케이션 컴포넌트 내, Internationalization 및 InvocationInternationalization 인터페이스는 의미적으로 동등합니다. 이 인터페이스 중 하나를 사용하여 컴포넌트가 실행 중인 스레드와 연관된 컨텍스트를 얻을 수 있습니다. 예를 들어, 두 인터페이스를 사용하여 서블릿 doPost 서비스 메소드에 전파된 로케일 목록을 얻을 수 있습니다.