Obter a localidade do usuário detectada pelo interceptor i18n na classe de ação
Eu tenho um webapp que usa o Struts 2. Eu uso o interceptor i18n com todas as configurações padrão. Eu pensei que este interceptor funcionava da seguinte forma:
Se houver um parâmetro request_locale, remova esse parâmetro e coloque esse código de idioma na sessão para uso futuro.Se não houver um parâmetro, pesquise no local de ativação e no local e coloque-o na sessão para uso futuro.Portanto, na minha classe de ação (que implementa o sessionAware), tenho o seguinte método:
public String getUserLocale()
{
return (String) session.get("WW_TRANS_I18N_LOCALE");
}
No entanto, esse método não funciona na situação 2, apenas retorna nulo. Portanto, minha pergunta é: como posso informar minha ação sobre a localidade do usuário que o interceptador i18n detectou se não houver um parâmetro de solicitação explícito? Porque não está armazenado na sessão?