Contexto de Internacionalização: Critérios de Gerenciamento
Políticas de internacionalização prescrevem como componentes de aplicativo Java™ EE ou seus contêineres de hosting gerenciam o contexto de internacionalização em chamadas de componente. Duas políticas de gerenciamento de contexto de internacionalização aplicam-se a todos os tipos de componentes: Application-managed internationalization (AMI) e Container-managed internationalization (CMI).
- Tipo de Internacionalização
- Atributo de Internacionalização de Contêiner
O serviço define um critério de internacionalização padrão, ou implícito, para cada tipo de componente de aplicativo. No tempo de desenvolvimento, os assemblers podem substituir a política padrão dos tipos de componentes de servidor, configurando explicitamente seu tipo de internacionalização e atributos opcionais de internacionalização de contêiner. As políticas configuradas durante a montagem são preservadas no descritor de implementação do aplicativo.
Todos os componentes possuem um tipo de internacionalização que indica se é AMI ou CMI; ou seja, se um componente deve ser implementado sob o critério de internacionalização gerenciado por aplicativo ou gerenciado por contêiner. Os assemblers de aplicativos podem definir o tipo de internacionalização para servlets, beans de sessão e beans orientados por mensagens. Os beans de entidade são implicitamente CMI e os clientes EJB são implicitamente AMI; nenhum deles pode ser configurado de outra maneira.
Para servlets e beans corporativos CMI, atributos opcionais de internacionalização de contêiner podem ser especificados para indicar qual contexto de internacionalização de chamada o contêiner abrangerá para os métodos de serviços ou de negócios. Uma chamada CMI do método de negócios ou de serviços pode ser executada sob o contexto do processo do responsável pela chamada, sob o contexto padrão da JVM do servidor ou sob um contexto personalizado especificado no atributo. Os assemblers podem especificar um atributo de internacionalização de contêiner por conjunto desconectado de servlets CMI em um módulo da Web ou um atributo por conjunto desconectado dos métodos de negócios dos beans CMI em um módulo de EJB. Um atributo de internacionalização de contêiner pode ser associado a mais de um método, mas um método não pode ser associado a mais de um atributo.
[<Tipo de Internacionalização>,<Atributo de Internacionalização de Contêiner>]
Existem vários casos em que o descritor de implementação parece não possuir informações de política, por exemplo: os aplicativos clientes EJB não possuem definições de política de internacionalização configuráveis; os componentes AMI não possuem atributos de internacionalização do contêiner e você não precisa especificar atributos de internacionalização do contêiner para componentes CMI. Quando o serviço não pode obter as definições explícitas de tipo de internacionalização e de atributo de contêiner de um descritor de implementação bem formado, ele insere implicitamente a definição apropriada ao critério.
- Os servlets (serviço) e os métodos de negócios EJB que não possuem todas as informações de política de internacionalização no descritor de implementação são executados implicitamente sob a política [CMI,RunAsCaller].
- Os servlets e métodos de negócios CMI que não possuem um atributo de internacionalização do contêiner no descritor de implementação são executados implicitamente sob a política [CMI,RunAsCaller].
- Os servlets e métodos de negócios AMI sempre não contêm atributos de internacionalização do contêiner no descritor de implementação, mas são executados implicitamente sob a política lógica [AMI,RunAsServer].
- Os clientes EJB sempre omitem informações de critérios de internacionalização no descritor de implementação. Por definição, os clientes EJB são implicitamente tipos AMI e são executados sob o contexto de chamada da JVM; eles são executados sob a política lógica [AMI,RunAsServer].
As políticas de internacionalização para clientes EJB e clientes HTTP não podem ser configuradas; os clientes HTTP são, no entanto, executados sob as configurações de prioridade do idioma do navegador hosting da Web. Essas definições são configuráveis sob o diálogo de opções da maioria dos navegadores da Web. Consulte a documentação do navegador da Web para obter detalhes.