Atributos de Internacionalização de Contêiner
O critério de internacionalização de cada método de servlet CMI e de negócios EJB possui um atributo de internacionalização de contêiner que especifica qual contexto de internacionalização o contêiner abrangerá em sua chamada.
- Executar Como
- Locales
- ID do Fuso Horário
- Servlets CMI em um módulo da Web
- Métodos de negócios de enterprise beans CMI em um módulo EJB (Enterprise JavaBeans)
- Métodos de negócios de beans de sessão ativados por serviços da Web. Nas descrições a seguir, o termo enterprise bean suportado refere-se aos beans corporativos CMI e aos beans de sessão ativados para serviços da Web.
Campo Executar Como
O campo Executar Como especifica um dos três tipos de contexto de chamada que um contêiner pode abranger em um método. Para os métodos de serviço de servlet e de negócios EJB, o contêiner constrói o contexto de internacionalização de chamada de acordo com a definição do campo Executar Como e associa esse contexto ao encadeamento atual antes de delegar à implementação do método.
Por padrão, as chamadas dos métodos de serviço de servlet e dos métodos de negócios EJB são executadas implicitamente como responsáveis pela chamada (RunAsCaller), a menos que o campo Executar Como de um atributo de política especifique de outra maneira. Os aplicativos do cliente EJB e os componentes do servidor AMI sempre são executados como servidor (RunAsServer).
- Responsável pela Chamada
- O contêiner chama o método sob o contexto de internacionalização do processo de chamada. Para qualquer elemento de contexto ausente, o contêiner fornece o elemento de contexto padrão correspondente da JVM (Java™ Virtual Machine). Selecione executar como responsável pela chamada quando desejar que a chamada seja executada sob o contexto de chamada do processo de chamada.
- Server
- O contêiner chama o método sob o código do idioma e fuso horário padrão da JVM. Selecione executar como servidor quando desejar que a chamada seja executada sob o contexto de chamada da JVM.
- Especificado
- O contêiner chama o método sob o contexto de internacionalização especificado no atributo. Selecione executar conforme especificado quando desejar que a chamada seja executada sob o contexto de chamada personalizado especificado na política; em seguida, forneça os elementos de contexto personalizados preenchendo os campos Códigos do Idioma e ID de Fuso Horário.
Campo Locales
- Código do Idioma. Geralmente, o código do idioma é um dos códigos de dois caracteres, em minúsculas, que são definidos pelo padrão ISO 639; no entanto, o código do idioma não está restrito a códigos ISO e não é um campo obrigatório. Um locale válido deve especificar um código do idioma, se não especificar um código do país.
- Código do País. Geralmente, o código do país é um dos códigos de dois caracteres, em maiúsculas, que são definidos pelo padrão ISO 3166; no entanto, o código do país não está restrito a códigos ISO e não é um campo obrigatório. Um locale válido deve especificar um código do país, se não especificar um código do idioma.
- Variante. A variante é um código específico do fornecedor. A variante não é um campo obrigatório e serve apenas para complementar os campos de código do idioma e do país, de acordo com os requisitos específicos do aplicativo ou da plataforma.
Um locale válido deve especificar, pelo menos, um código do idioma ou um código do país; a variante é sempre opcional. O primeiro código do idioma da lista é retornado ao acessar um contexto de chamada utilizando o método getLocale da API do contexto de internacionalização.
Campo ID do Fuso Horário
O campo ID do Fuso Horário especifica um identificador abreviado para um fuso horário do qual o contêiner define um escopo para uma chamada. Você também pode configurar o campo ID do Fuso Horário para os métodos de negócios de serviços da Web.
Um fuso horário representa um deslocamento temporário e calcula informações sobre o horário de verão. Um ID válido indica qualquer fuso horário suportado pelo tipo java.util.TimeZone. Especificamente, um ID válido é qualquer um dos IDs que aparecem na lista de IDs de fuso horário retornados pelo método java.util.TimeZone.getAvailableIds() ou um ID personalizado que tenha o formato GMT[+|-]hh[[:]mm]; por exemplo, America/Los_Angeles, GMT-08:00 são IDs válidos de fuso horário.