[Logo] Neo Framework Forum
  [Search] Busca   [Recent Topics] Tópicos Recentes   [Members]  Lista de Usuários   [Groups] De volta para a página principal 
[Register] Registrar / 
[Login] Entrar 
Internacionalização  XML
Índice dos Fóruns -> Dúvidas Ir para a página: 1, 2 Próximo 
Autor Mensagem
bruno.braga
Equipe
[Avatar]

Membro desde: 22/06/2007 17:11:08
Mensagens: 6
Localização: Belo Horizonte, MG
Offline

Fala povo...

Na documentação de componentes senti falta de algo que falasse sobre internacionalização (i18N).
Tanto uma tag de i18n, quanto o uso de i18n em outros componentes como Menu.

Tem isso?

http://www.brunobraga.com.br
http://www.j2eespider.org
pedro.goncalves
Equipe
[Avatar]
Membro desde: 17/04/2007 16:12:20
Mensagens: 539
Localização: Belo Horizonte - MG
Offline

Ae bruno.. tranquilo??

Cara.. ainda não fizemos isso não, mais já está na lista de pendências. Se tu quiser dar uma ajudada seria legal..

mais vamos ver se conseguimos resolver isso o mais rápido o possível.

E obrigado pela visita. =p

Pedro Gonçalves
http://pedrogoncalves.com.br
[Email] [WWW] [MSN]
pedro.goncalves
Equipe
[Avatar]
Membro desde: 17/04/2007 16:12:20
Mensagens: 539
Localização: Belo Horizonte - MG
Offline

Bruno,.. você que já trabalhou com tantos frameworks, teria como dizer qual o melhor esquema de internacionalização?

ou sugerir algum esquema para que possamos colocá-lo em testes e etc..

Té!

Pedro Gonçalves
http://pedrogoncalves.com.br
[Email] [WWW] [MSN]
bruno.braga
Equipe
[Avatar]

Membro desde: 22/06/2007 17:11:08
Mensagens: 6
Localização: Belo Horizonte, MG
Offline

Não precisa alterar nada na forma de usar os componentes.

<menu title="menu.cadastro">
<menu title="menu.aluno" url="/login/crud/Aluno" />
<menu title="menu.bolsista" url="/login/crud/Bolsista" />
<menu title="Cliente" url="/login/crud/Cliente" />
</menu>

Pode ficar assim mesmo para manter a compatibilidade das tags.
Ai o componente procura menu.aluno no arquivo de resources e mostra a mensagem do arquivo.
Se não encontrar (caso do 3 item do menu), o componente pode exibir o texto que está em title mesmo.

Então o mesmo menu sem atributos adicionais funciona com internacionalização e sem.

-------------

Agora quanto ao arquivo de resources tem 2 paradigmas:
- Usar padrão Java, onde o arquivo de resources fica no Source, e a cada alteração tem reload da aplicação.
- Usar no estilo Mentawai, onde o arquivo fica em uma pasta dentro do WEB-INF. Então é possível alterar o arquivo a vontade sem reload. Nesse caso existe uma classe que fica analisando se esse arquivo foi alterado, e caso tenha sido o arquivo é aberto e lido - então as alterações refletem na hora.

As duas formas tem pontos negativos.
A primeira tem reload. Mas com a segunda você não pode usar jstl, nem usar código em Java (nativo) que le do arquivo de resource porque ele não existe. Então se fosse usar o segundo caso teria que implementar as suas tags de i18n e faz classes utilitarias para ler esse arquivo em vez de usar o Bundle padrão.

Sei lá, nessa parte eu não tenho opinião de qual é melhor não, pra mim as duas são ruins. Uma quebra compatibilidade, a outra é tosca - faz reload pq vc mudou um arquivo texto... hehe ^^

http://www.brunobraga.com.br
http://www.j2eespider.org
pedro.goncalves
Equipe
[Avatar]
Membro desde: 17/04/2007 16:12:20
Mensagens: 539
Localização: Belo Horizonte - MG
Offline

Entendi...

mais e quanto a seleção de um locale?

como funciona?

você tem algum url para i18n do java?

Pedro Gonçalves
http://pedrogoncalves.com.br
[Email] [WWW] [MSN]
bruno.braga
Equipe
[Avatar]

Membro desde: 22/06/2007 17:11:08
Mensagens: 6
Localização: Belo Horizonte, MG
Offline

Seleção é automatica com base no computador do usuário (linguagem do usuário). Mas claro tem que ter uma forma de mudar de idioma.

Tenho link não.

http://www.brunobraga.com.br
http://www.j2eespider.org
pedro.goncalves
Equipe
[Avatar]
Membro desde: 17/04/2007 16:12:20
Mensagens: 539
Localização: Belo Horizonte - MG
Offline

Vou dar uma estudada nisso e jaja te dou um feedback!

Pedro Gonçalves
http://pedrogoncalves.com.br
[Email] [WWW] [MSN]
pedro.goncalves
Equipe
[Avatar]
Membro desde: 17/04/2007 16:12:20
Mensagens: 539
Localização: Belo Horizonte - MG
Offline

Bruno!!

tranquilo cara??

Ai ... good News..

agora o neo suporta internacionalização!!!

se precisar de alguma tag me da um toque que monto.. amanha vou escrever um tutorial de como internacionalizar a aplicação...

Agora so falta o rógel dar uma revisão no código.. ae ele publica e avisa quando solta a versão!!

teh

Pedro Gonçalves
http://pedrogoncalves.com.br
[Email] [WWW] [MSN]
bruno.braga
Equipe
[Avatar]

Membro desde: 22/06/2007 17:11:08
Mensagens: 6
Localização: Belo Horizonte, MG
Offline

Bacana

http://www.brunobraga.com.br
http://www.j2eespider.org
froid
Equipe

Membro desde: 06/12/2007 16:32:45
Mensagens: 12
Offline

Olá
Gostaria de saber se já foi disponibilizado no NEO uma forma de internacionalização dos jsps?

obrigado
pedro.goncalves
Equipe
[Avatar]
Membro desde: 17/04/2007 16:12:20
Mensagens: 539
Localização: Belo Horizonte - MG
Offline

foi sim...

vou ver se libero um app com uma demonstração

Pedro Gonçalves
http://pedrogoncalves.com.br
[Email] [WWW] [MSN]
froid
Equipe

Membro desde: 06/12/2007 16:32:45
Mensagens: 12
Offline

ok
fico na espera..
pedro.goncalves
Equipe
[Avatar]
Membro desde: 17/04/2007 16:12:20
Mensagens: 539
Localização: Belo Horizonte - MG
Offline

Vamos lá!

No seu src você cria os arquivos que farão a internacionalização. Ex:

i18n_pt_BR.properties
i18n_de_DE.properties

e o default que é o i18n.properties, que é usado caso não tenha setado nenhum locate por padrão, ou não foi encontrado o especificado.

O conteúdo é no formado:
Code:
 onibus = Bus
 onibus.cdonibus = Id
 onibus.tipoonibus = Category
 onibus.placa = Placa ing
 onibus.arcondicionado = Air
 onibus.tv = Tv
 onibus.cafe = Cofee
 
 menu.tipoonibus = Category of Bus
 menu.onibus = Bus
 


Com as mesmas variáveis você irá criar os outros.. o pt_BR e etc..

Bom..

A partir disso você remova todas as annotations @DisplayName do seu bean.

Caso queira alterar o Default seta um parâmetro na sua url.. do tipo

/modulo/tipo/qualquercontroller?locale=pt_BR
/modulo/tipo/qualquercontroller?locale=de_DE

lembrando que esses nomes pt_BR são padronizados.. o primeiro antes do _ é o idioma e o segundo o país.. existem algumas tabelinhas ai que padroniza isso..

Bom.. espero ter esclarecido as suas dúvidas.

[]'s

Pedro Gonçalves
http://pedrogoncalves.com.br
[Email] [WWW] [MSN]
froid
Equipe

Membro desde: 06/12/2007 16:32:45
Mensagens: 12
Offline

opaa

funcionou perfeitamente...

obrigado pedro

parabéns novamente pelo trabalho
pedro.goncalves
Equipe
[Avatar]
Membro desde: 17/04/2007 16:12:20
Mensagens: 539
Localização: Belo Horizonte - MG
Offline

Opa! Que isso.. estamos ai pra isso!!

Depois vou montar um artigo explicando melhor..

Só uma coisa que não disse..
se você quiser o locale atual use o código:

Util.locale.getLocaleSelected();

caso queira pegar alguma chave que esteja sendo internacionalizado, faz assim:

Util.locale.getBundleKey(String key)

Sendo que essa key é igual está no arquivo.. por ex. onibus.nome

sacou?

Pedro Gonçalves
http://pedrogoncalves.com.br
[Email] [WWW] [MSN]
 
Índice dos Fóruns -> Dúvidas Ir para a página: 1, 2 Próximo 
Ir para:   
Powered by JForum 2.1.7 © JForum Team