quarta-feira, 2 de julho de 2008

Internacionalização com o GWT

Olá amiguinhos.

Poucos sabem mas estou desenvolvendo um projeto Open Source, junto com a minha amiga Laydy. E estou utilizando o GWT e ao longo do projeto, descubro muitas coisas e vou postando aqui. O projeto está no começo e pensei na internacionalização. Se eu fosse fazer isso no fim do projeto, seria quase o mesmo que redesenvolver tudo, então resolvi acelerar isso agora. Pesquisei e fui direto ao site do GWT e lá explica detalhadamente (A documentação do GWT é a melhor que eu já vi). Então vou resumir aqui o básico, se precisarem de mais recursos, acessem o esse link .

Primeiro, adicione o seguinte no seu arquivo *.gwt.xml:

<inherits name="com.google.gwt.i18n.I18N"/>


Depois, crie uma interface em algum pacote de sua escolha, vamos nomea-la de Teste:

public interface Teste extends Constants {
String helloWorld();
String goodByeWorld();
}


Depois crie um arquivo com o mesmo nome da interface, chamado Teste.properties, com a seguinte estrutura:

helloWorld = Olá mundo!
goodByeWorld = Tchau mundo!


Simples assim. O nome da interface é a mesma do arquivo properties, assim o GWT sabe qual arquivo pegar. E os métodos da interface, são os mesmos nomes das propriedades. Agora na sua classe principal, faça o seguinte:

Teste teste = (Teste)GWT.create(Teste.class);
Window.alert(teste.helloWorld());
Window.alert(teste.goodByeWorld());


Simples não? O problema é se o sistema for gigante, vai dar trabalho ficar criando isso hehehe. Mas vai da sua criatividade, você pode criar uma classe para tratar isso e um ComboBox para o usuário escolher.

Enjoy...

2 comentários:

Anônimo disse...

Muito massa Clayton.... usei e funcionou...

Unknown disse...

Para projetos de localização usando arquivos .properties, eu recomendo esta plataforma de tradução do softwares - https://poeditor.com