Contexto de internacionalización

Un contexto de internacionalización es una colección de información de internacionalización que se puede distribuir que contiene una lista ordenada, o cadena, de entornos locales y un único huso horario, donde los entornos locales y el huso horario son instancias de tipos de SDK de Java™ java.util.Locale y java.util.TimeZone, respectivamente. La cadena de entornos locales se ordena según las preferencias del usuario.

El servicio de internacionalización gestiona y proporciona dos clases de contexto de internacionalización: el contexto del llamante que representa el entorno de localización del llamante, y el contexto de invocación que representa el entorno de localización bajo el que se ejecuta un método de empresa. Los componentes de aplicación de servidor utilizan elementos de los contextos de internacionalización del llamante y de la invocación para adaptar de forma adecuada los cálculos que se ven afectados por el entorno local y el huso horario.

El servicio de internacionalización no tiene soporte para tipos de husos horarios que no sean del tipo java.util.SimpleTimeZone contenido en el SDK de Java. Los tipos de husos horarios sin soporte se correlacionan de forma transparente al huso horario predeterminado de la JVM cuando se proporcionan a métodos de API de contexto de internacionalización. Para una descripción completa de los tipos java.util.Locale, java.util.TimeZone y java.util.SimpleTimeZone, consulte la documentación API del SDK de Java.

Contexto del llamante

El contexto de internacionalización del llamante contiene la cadena de entornos locales y husos horarios que se han recibido en invocaciones de métodos de servicio de servlets y métodos de empresa EJB entrantes; es el contexto de internacionalización propagado del proceso que realiza la llamada. Utilice los elementos del contexto del llamante que se encuentran en los componentes de aplicación del servidor para localizar cálculos para el componente que realiza la llamada. El contexto del llamante sólo es de lectura y pueden acceder a él todos los componentes de aplicaciones mediante el uso de la interfaz Internationalization de la API de contexto de internacionalización.

El contexto del llamante se calcula de la manera siguiente: en una invocación a un método de empresa EJB o a un método de servicio de servlet, el servicio de internacionalización extrae el contexto de internacionalización de la solicitud entrante y asigna como ámbito este contexto al método como el contexto de llamante. Para cualquier elemento de contexto nulo o que falte, el servicio inserta el correspondiente elemento predeterminado de la JVM (por ejemplo, java.util.Locale.getDefault() o java.util.TimeZone.getDefault().) El servicio ejecuta una inserción similar cuando faltan elementos de contexto o estos son nulos en las invocaciones de beans de sesión sin estado que se habilitan para servicios web.

Formalmente, el contexto del llamante es el contexto de invocación del componente de aplicación o método de empresa que realiza la llamada.

Contexto de invocación

El contexto de internacionalización de invocación contiene la cadena de entornos locales y el huso horario bajo los que se ejecutan los métodos de empresa EJB y los métodos de servicio de servlets. Está gestionado por el contenedor en el que se encuentra o por el componente de aplicación, en función de la política de internacionalización aplicable. En las solicitudes de métodos de empresa de salida, es el contexto que se propaga al proceso de destino. Utilice elementos de contexto de invocación para localizar los cálculos bajo los valores especificados del componente de aplicación actual.

El contexto de invocación se calcula de la siguiente manera: en una invocación de entrada de método de servicio de servlet o un método de empresa, el servicio de internacionalización consulta la política de gestión de contexto asociada. Si la política es internacionalización gestionada por contenedor (CMI), el contenedor asigna como ámbito el contexto designado por la política a la invocación; de lo contrario, la política es internacionalización gestionada por aplicación (AMI) y el contenedor asigna como ámbito un contexto vacío a la invocación que puede modificarse por la implementación del método.

Los componentes de aplicación pueden acceder a los elementos de contexto de invocación por medio de las interfaces Internationalization e InvocationInternationalization de la API de contexto de internacionalización. Los elementos del contexto de invocación se pueden establecer (alternar manualmente) sólo bajo la política de internacionalización gestionada por aplicación.

En una solicitud de método de empresa saliente, el servicio obtiene los elementos del contexto de invocación actualmente con ámbito y los adjunta a la solicitud saliente. Este contexto exportado saliente pasa a ser el contexto de llamante en la invocación de destino. Cuando se proporcionan elementos de contexto de invocación, ya sea para exportarlos en las solicitudes de salida o a través de la API, el servicio de internacionalización siempre proporciona el conjunto de elementos más reciente que utiliza la API; además, el servicio proporciona el elemento predeterminado correspondiente de la JVM para cualquier elemento de contexto de invocación que sea nulo.

Debido a que el contexto de internacionalización que se propaga a través de solicitudes de servicios web (SOAP) contiene un ID de huso horario en lugar de todo el estado de un objeto java.lang.SimpleTimeZone, la información de huso horario se puede perder cuando un programa de cliente habilitado para servicio web o un bean de sesión pasa a participar en el cálculo de empresa remoto.


Icon that indicates the type of topic Concept topic



Timestamp icon Last updated: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=cin_i18ncontext
File name: cin_i18ncontext.html