Fala galera…
seguinte, kero q meus JSPs busquem o texto dentro do arquivo .properties do idioma q eu definir…
tem como fazer isso??
tentei setar o Locale no response, mas nao funfou…
alguem tem ideias??
falow
Fala galera…
seguinte, kero q meus JSPs busquem o texto dentro do arquivo .properties do idioma q eu definir…
tem como fazer isso??
tentei setar o Locale no response, mas nao funfou…
alguem tem ideias??
falow
pt.properties
en.properties
Após saber o locale corretamente, qual a sua dificuldade em buscar o arquivo com o nome correto?
entao LIPE, eh q to fazendo assim p/ buscar o texto:
<portletAPI:text key="SSTNET.titulo.atuacao" bundle="nls.SSTNET"/>
acho q nao tem uma opcao da tag p/ passar o nome correto do arquivo ou se a opcao bundle aceita isso…testing now…
valew
Uma coisa que sempre me intrigou é que usando properties + ResourceBundle, isto é, a solução padrão de internacionalization, vc precisa dar um restart no servidor toda vez que vc faz alguma alteração nos seus properties.
Outra coisa chata é que ter um arquivo por língua, e um arquivo por JSP, logo se torna insustentável.
Por isso que aqui no ParPerfeito nós desenvolvemos uma solução caseira de internacionalização (adeus ResourceBundle), que de tempos em tempos checa se o arquivo properties for alterado no disco e recarrega ele em memória. Tb colocamos todas as línguas num único arquivo, para facilitar a organização. E tb fizemos um esquema de herança, de forma que se uma página não encontra uma palavra no seu properties, procura no properties de cima (pai).
Reinventei a roda mais uma vez ou o esquema de internacionalização padrão do Java, pelo menos para sites, é tosco mesmo?
Nunca utilizei o i18n no esquema de properties + resource bundle enquanto desenvolvia só jsp/servlets. Agora que estou em um projeto com ww a coisa fica parecida com o que vc detalhou mas sem misturar linguagens no mesmo arquivo.
Houve uma discussão, e eu fui contra misturar as linguagens no mesmo arquivo. Fui voto vencido e depois vi que é realmente bem melhor colocar tudo no mesmo arquivo. Tanto para a manutenção, quanto para as futuras traduções. Fica assim:
pt.frango = frango
en.frango = chicken
es.frango = polio
Depois quando vc precisa alterar ou incluir outras palavras, vc só vai estar mexendo em um arquivo apenas. Sem contar que a quantidade de arquivos fica o número de línguas que vc tem menor.
Então Sergio, terei que implantar i18n na minha aplicação, li seu topico e achei interessante sua ideia, voce fez isto baseado em algum artigo, site, tutorial…
Seria possivel detalhar mais sua alternativa, assim posso tentar fazer algo parecido…
Obrigado.
hijav,
A teoria eu já coloquei aui. Agora tu vai ter que botar sua cabeça pra pensar, pois solução pronta não existe, a não ser a minha que eu não posso te dar pois é da empresa. A graça de programar é essa né, fazer as coisas do nada…
:arrow: checagem de tempos em tempos do arquivo properties para saber se ele foi alterado (java.io.File). Se foi alterado recarregá-lo em memória.
:arrow: Colocar todas as linguas num único arquivo properties, diferenciando-as por um prefixo.
:arrow: Criar um esquema esperto de herança, ou seja, se não encontrar no properites da página em questão, procura num properties geralzão.
:arrow: Crie alguns tags espertos que sua i18n vai ficar profissional e transparente para o coitado do designer…
Tudo isso é legal se estamos falando de sites !!! Se vc está falando de um desktop application, a solução padrão com ResourceBundle resolve muito bem.