Contexto de internacionalización: gestión de políticas

Las políticas de internacionalización prescriben cómo los componentes de aplicación Java™ EE o los contenedores que los alojan gestionan el contexto de internacionalización en las invocaciones de componentes. Se aplican dos políticas de gestión de contexto de internacionalización a todos los tipos de componente: AMI (Application-managed internationalization - Internacionalización gestionada por aplicación) y CMI (Container-managed internationalization - Internacionalización gestionada por contenedor).

Estas políticas están representadas en dos partes:
  • Tipo de internacionalización
  • Atributo de internacionalización de contenedor

El servicio define un valor predeterminado, o implícita, una política de internacionalización para cada tipo de componente de aplicación. Durante el desarrollo, los ensambladores pueden alterar manualmente la política predeterminada para los tipos de componentes de servidor configurando de forma explícita sus atributos de tipo de internacionalización y de internacionalización de contenedor opcionales. Las políticas configuradas durante el ensamblaje se conservan en el descriptor de despliegue de la aplicación.

Todos los componentes tienen un tipo de internacionalización que indica si es AMI o CMI; es decir, si un componente va a desplegarse bajo la política de internacionalización gestionada por aplicación o gestionada por contenedor. Los ensambladores de aplicaciones pueden establecer el tipo de internacionalización para servlets, beans de sesión y beans controlados por mensajes. Los beans de entidad son implícitamente CMI y los clientes EJB son implícitamente AMI; no pueden configurarse de otro modo.

Para los enterprise beans y servlets CMI, pueden especificarse atributos de internacionalización de contenedor opcionales para indicar qué contexto de internacionalización de invocación va a asignar el contenedor como ámbito a los métodos de servicio o de empresa. Una invocación de un método de empresa o servicio CMI puede ejecutarse bajo el contexto del proceso del llamante, bajo el contexto predeterminado de la JVM del servidor o bajo un contexto personalizado especificado en el atributo. Los ensambladores pueden especificar un atributo de internacionalización de contenedor por conjunto desarticulado de servlets CMI dentro de un módulo web, o un atributo por conjunto desarticulados de métodos de empresa de beans de CMI dentro de un módulo EJB. Un atributo de internacionalización de contenedor puede asociarse a más de un métodos, pero un método no puede asociarse a más de un atributo.

Cuando un servidor de aplicaciones inicia una aplicación, el servicio de internacionalización recopila la información de política del descriptor de despliegue y después utiliza esta información para construir y asociar una política de internacionalización a cada invocación de componente. Una política se denomina:
$<Tipo de internacionalización>,<Atributo de internacionalización de contenedor>]

Hay varios casos en los que el descriptor de despliegue parece que carezca de información de política, por ejemplo: aplicaciones cliente EJB tienen valores de política de internacionalización no configurables; componentes de AMI no tienen atributos de internacionalización de contenedor; y no se requiere especificar los atributos de internacionalización de contenedor para los componentes de CMI. Cuando el servicio no puede obtener los valores de los atributos de internacionalización de contenedor y tipo de internacionalización del descriptor de despliegue con un formato correcto, éste inserta implícitamente el valor adecuado en la política.

El servicio observa los siguientes convenios al aplicar políticas a invocaciones:
  • Los servlets (servicio) y los métodos de empresa EJB que carecen de información de política de internacionalización en el descriptor de despliegue se ejecutan de forma implícita bajo la política [CMI,RunAsCaller].
  • Los servlets de CMI y los métodos de empresa que carecen de un atributo de internacionalización de contenedor en el descriptor de despliegue se ejecutan de forma implícita bajo la política [CMI,RunAsCaller].
  • Los servlets de AMI y los métodos de empresa siempre carecen de atributos de internacionalización de contenedor en el descriptor de despliegue, pero se ejecutan de forma implícita bajo la política lógica [AMI,RunAsServer].
  • Los clientes EJB siempre carecen de información de política de internacionalización en el descriptor de despliegue. Por definición, los clientes EJB son, de forma implícita tipos AMI y se ejecutan bajo el contexto de invocación de la JVM; se ejecutan bajo la política lógica [AMI,RunAsServer].
Para el resto de situaciones, como por ejemplo un descriptor de despliegue con formato erróneo, consulte el tema Errores del servicio de internacionalización.

Las políticas de internacionalización para clientes EJB y HTTP no se pueden configurar; sin embargo, los clientes HTTP pueden ejecutarse bajo los valores de prioridad de idioma del navegador web en el que están alojados. Estos valores se pueden configurar en el diálogo de opciones de la mayoría de navegadores web. Para más información, consulte la documentación del navegador web.


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_i18ncontextpolicies
File name: cin_i18ncontextpolicies.html