| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 20/01/2009 16:23:21
|
RenataFA
Virtual Machine Man
![[Avatar]](/images/avatar/c05c903e3d997added79518f0e850026.jpg)
Membro desde: 24/08/2006 08:15:10
Mensagens: 698
Offline
|
Olá pessoal!
Estou precisando traduzir os textos fixos do JavaHelp. Pesquisei aqui no GUJ e o único post que encontrei que tem haver com o que preciso é esse aqui:
http://www.guj.com.br/posts/list/39294.java#217915
Só que eu não entendi o post, na verdade qto a reescrever a classe javax.help.resources.Constants.java eu entendi, mas e ai? Como faço pro JavaHelp ler essa classe que eu fiz invés da dele?
Bom, eu não entendi, preciso de ajuda e fiquei com vergonha de perguntar naquele post pq ele é bem antigo, de 2006, acho que nem rola..rs..
Alguém pode me ajudar? Ou se tiver algum outro jeito de traduzir o JavaHelp eu tb aceito!
Grata,
Renata
This message was edited 1 time. Last update was at 30/03/2009 11:42:27
|
[]'s, Renata |
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 20/01/2009 16:32:00
|
thingol
Moderador
Membro desde: 29/07/2004 16:10:13
Mensagens: 17543
Offline
|
Bom, pelo que está escrito, você precisa mencionar essa classe (no seu classpath) antes dos jars do JavaHelp, para que ela "sobreponha" a classe original que está nos jars do JavaHelp. Parece uma solução meio "suja", na verdade, mas não sei se é a única possível.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 20/01/2009 19:50:29
|
RenataFA
Virtual Machine Man
![[Avatar]](/images/avatar/c05c903e3d997added79518f0e850026.jpg)
Membro desde: 24/08/2006 08:15:10
Mensagens: 698
Offline
|
thingol, me perdoe pela ignorancia, mas poderia ser mais espec[ifico?
Desculpa msm! To com a sensacao de que eh algo idiota mas que eu nao estou enxergando...
Obrigada
|
[]'s, Renata |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 20/01/2009 23:38:58
|
joede.fadel
Virtual Machine Man
![[Avatar]](/images/avatar/9729c9467900e712f46044a2e54da67f.jpg)
Membro desde: 15/08/2007 00:42:59
Mensagens: 536
Localização: Curitiba/Pr
Offline
|
pelo que eu entendi vai ser quase uma "gambiarra"
|
Joe S2 Jo
UTFPR - Universisdade Tecnologica Federal do Paraná
Java-PHP-PL/SQL |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 22/01/2009 06:52:33
|
RenataFA
Virtual Machine Man
![[Avatar]](/images/avatar/c05c903e3d997added79518f0e850026.jpg)
Membro desde: 24/08/2006 08:15:10
Mensagens: 698
Offline
|
Nem me fale! "Gambiarra" é pouco pra isso ai!
Mas o problema é que não estou conseguindo mais nada! Pesquisando descobri esse comando: xml:lang="pt-BR"
Segundo alguns manuais que achei na internet, esse comando deve ser colocado dentro do tag <presentation>, ficaria assim por ex:
Bom, tentei fazer isso ai. Mas acham que funcionou? Que nada! Cansei de testar de todas as formas possíveis e não traduz!
Por favor, ngn sabe o que posso fazer pra resolver isso? Alguma dica?
SOCORRO!
Grata,
Renata
|
[]'s, Renata |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 27/03/2009 14:30:41
|
RenataFA
Virtual Machine Man
![[Avatar]](/images/avatar/c05c903e3d997added79518f0e850026.jpg)
Membro desde: 24/08/2006 08:15:10
Mensagens: 698
Offline
|
Bom pessoal... estou aqui "revivendo" este tópico que ainda não foi solucionado.
Faz tempo já... 2 meses... e nada.
Ngn. tem alguma dica pra mim?
OBS: Aproveito para deixar uma pergunta aos moderadores: o que houve com a opção de pesquisa do nosso forum? não está funcionando, já fiz teste... procurem por "javahelp" por ex... essa msm é sobre isso, mas se vc procurar ele não encontra nenhum resultado.
|
[]'s, Renata |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 27/03/2009 21:48:08
|
Eliezer Reis
Java Ninja
Membro desde: 23/04/2006 11:21:50
Mensagens: 291
Localização: Brasil
Offline
|
Bom,
É como eu já te disse. O JavaHelp possui um mecanismo de internacionalização porém não existe a tradução para o Locale pt_BR. Logo, como o .jar da biblioteca javahelp é assinado, as soluções para este problema é tudo "gambiarra". Então o que poderia ser feito?
Primeira opção:
- Criar a mesma classe Constants traduzindo conforme necessidade usando a mesma estrutura que contem no .jar do javahelp.
Segunda opção (Não testei)
- Descompactar todo o jar do jh.jar, modificar o META-INF/MANIFEST.MF tirando as assinaturas e gerar o .jar novamente.
Melhor solução é traduzir a classe Constants, e mandar para os desenvolvedores da API, nestes dois meses que já se passaram provavelmente você teria pelo menos uma resposta concreta do problema.
É isso, abraço.
|
[]'s Eliezer Reis
SCJP
SCWCD |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 30/03/2009 06:46:48
|
RenataFA
Virtual Machine Man
![[Avatar]](/images/avatar/c05c903e3d997added79518f0e850026.jpg)
Membro desde: 24/08/2006 08:15:10
Mensagens: 698
Offline
|
Eliezer Reis wrote:Bom,
É como eu já te disse. O JavaHelp possui um mecanismo de internacionalização porém não existe a tradução para o Locale pt_BR. Logo, como o .jar da biblioteca javahelp é assinado, as soluções para este problema é tudo "gambiarra". Então o que poderia ser feito?
Primeira opção:
- Criar a mesma classe Constants traduzindo conforme necessidade usando a mesma estrutura que contem no .jar do javahelp.
Segunda opção (Não testei)
- Descompactar todo o jar do jh.jar, modificar o META-INF/MANIFEST.MF tirando as assinaturas e gerar o .jar novamente.
Melhor solução é traduzir a classe Constants, e mandar para os desenvolvedores da API, nestes dois meses que já se passaram provavelmente você teria pelo menos uma resposta concreta do problema.
É isso, abraço.
Então, sua opção 1 eu tentei, e funciona, mas não como preciso. É que não preciso simplesmente TRADUZIR a classe, preciso INTERNACIONALIZÁ-LA. Se eu faço a super gambiarra do tipo: pego o Constants.java, traduzo, gero o .class, abro o jar do javahelp, removo o Constants.class que está lá e coloco no lugar o que eu gerei, funciona, funcioná só pra português, não consigo internacionalizar. Eu já tentei colocar dentro dessa classe meus comandos de internacionalização, ele dá erro, não encontra os caminhos, só pau. Então, por fim, desta forma não consegui fazer funcionar.
Quanto a opção 2, eu pensei em algo assim. Mas a caca é que quando eu abro o source ele não encontra várias coisas. Fica dando erro por não encontrar várias classes. Então obviamente não tem como eu gerar o jar novamente.
Eu mando AGORA a Constants.java pra quem quer que seja, traduzida. Mas na boa? Não acho que funcione. Tentei usar alguma das que ele já possue e simplesmente não funciona, continua sempre em inglês (o idioma default). Por isso eu penso que não ia fazer a menor diferença. Fora que faz bem mais de 2 meses que estou mexendo com isso (intercalando com outras coisas é claro) e não vi um release de versão sequer ser liberado. Eu duvido que eles estão mexendo nisso e liberando ai a cada 2 meses como vc disse...
Grata,
Renata
|
[]'s, Renata |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 30/03/2009 10:59:52
|
Eliezer Reis
Java Ninja
Membro desde: 23/04/2006 11:21:50
Mensagens: 291
Localização: Brasil
Offline
|
Acho que você não entendeu o que eu quis dizer! Olha só, o JavaHelp vem com internacionalização somente para os seguintes Locales (Linguas): en (default), ar, cs, de, es, fr, he, ja, pl, ru, sk e zh. Infelizmente não tem como aumentar mais línguas porém você consegue substituir o suporte para estas linguas. Mas como?
Crie no seu projeto o pacote(package) javax.help.resources e dentro deste pacote crie a classe Constants.java ou Constants_<algum dos locales citados acima> (Constants_pl).
Agora traduza a classe http://www.koders.com/java/fidF95BF2B283469F5B6CFA4D8C479FD5568434DEF3.aspx?s=javax.help.resources#L21.
Em algum momento do seu código você terá algo semelhante como abaixo para criar sua interface de ajuda. Observe a linha 3 e perceba que estou mudando os Labels do JavaHelp para francês. Agora basta usar este mesmo recurso para apontar para sua nova classe traduzida e mantendo ainda suporte as demais línguas. Se você usar a classe Constants.java o locale correto deverá ser "en".
Isso resolve? Se você precisar internacionalizar mais que 12 línguas dai complicou. Embora não tenha testado (falta de tempo mesmo) o segundo passo que citei acima deverá funcionar.
Melhorou em algo? Abraço!
|
[]'s Eliezer Reis
SCJP
SCWCD |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 30/03/2009 11:41:57
|
RenataFA
Virtual Machine Man
![[Avatar]](/images/avatar/c05c903e3d997added79518f0e850026.jpg)
Membro desde: 24/08/2006 08:15:10
Mensagens: 698
Offline
|
Eliezer Reis wrote:Acho que você não entendeu o que eu quis dizer! Olha só, o JavaHelp vem com internacionalização somente para os seguintes Locales (Linguas): en (default), ar, cs, de, es, fr, he, ja, pl, ru, sk e zh. Infelizmente não tem como aumentar mais línguas porém você consegue substituir o suporte para estas linguas. Mas como?
Crie no seu projeto o pacote(package) javax.help.resources e dentro deste pacote crie a classe Constants.java ou Constants_<algum dos locales citados acima> (Constants_pl).
Agora traduza a classe http://www.koders.com/java/fidF95BF2B283469F5B6CFA4D8C479FD5568434DEF3.aspx?s=javax.help.resources#L21.
Em algum momento do seu código você terá algo semelhante como abaixo para criar sua interface de ajuda. Observe a linha 3 e perceba que estou mudando os Labels do JavaHelp para francês. Agora basta usar este mesmo recurso para apontar para sua nova classe traduzida e mantendo ainda suporte as demais línguas. Se você usar a classe Constants.java o locale correto deverá ser "en".
Isso resolve? Se você precisar internacionalizar mais que 12 línguas dai complicou. Embora não tenha testado (falta de tempo mesmo) o segundo passo que citei acima deverá funcionar.
Melhorou em algo? Abraço!
FUNCIONOU!
Eliezer, eu tava fazendo tudo isso que vc falou... quer dizer, quase tudo!
Faz 2 meses já que eu tô trocando idéia com o povo do forum da SUN, os nego que desenvolveram o tal do JavaHelp (imagina minha cara qdo abri o fonte do JavaHelp e vi na assinatura do autor do fonte o msm nome do kra que tá me mandando e-mail no forum..rs..)
Eles me falaram pra fazer um projeto separado, com uma pkg javax.help.resources, pra colocar ali dentro minha Constants_pt.java, compilar, etc, etc... como vc falou.
Eu já tava cansada de fazer isso, já tentei de tudo alias, muitas coisas. Mas um detalhe que vc falou clareou qual era o problema e pq não funcionava daquela forma, vc disse:
"Crie no seu projeto o pacote(package) javax.help.resources e dentro deste pacote crie a classe Constants.java ou Constants_<algum dos locales citados acima> (Constants_pl)."
E depois:
"Se você precisar internacionalizar mais que 12 línguas dai complicou."
Ai que eu me toquei!!!!
Eu já tava fazendo isso, mas eu tava criando um Constants_pt.java. Como não existe Constants_pt.java o desgraçado do JavaHelp não reconhecia minha classe! Agora eu simplesmente, depois de ler o que vc escreveu e me tocar da "babada" que eu tava cometendo, eu apenas fui lá, renomeei minha Constants_pt.java pra Constants.java, rodei o projeto e TUDO FUNCIONOU!
Ah, e não precisa se preocupar em internacionalizar "apenas" 12 idiomas..rs... Eu peguei e internacionalizei minha classe Constants.java, desta forma qq idioma que for colocado no meu sistema, funcionará nela tb. Lindo né? rs
MUITO obrigada! Fazia tempo que eu tava apanhando disso ai... Vlw msm!!!!
|
[]'s, Renata |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 30/03/2009 12:00:25
|
Eliezer Reis
Java Ninja
Membro desde: 23/04/2006 11:21:50
Mensagens: 291
Localização: Brasil
Offline
|
AuhAuhAuhAAUH. Pior que eu também estou a alguns meses tentando te explicar isso. Que bom que funcionou!
Alias, acaba de me ocorrer que você consegue usar mais de 12 línguas apenas deixando dinâmica a sua classe Constantes.java.
Veja este método da classe Constants.
Você pode fazer este método retornar o resultado de um outro método seu que faz o preenchimento da tradução caso ela não seja suportada pelo JavaHelp.
Existe bem umas 3 possibilidades ainda. Problema e tempo para fazer os testes e te explicar como.
Abraço!
|
[]'s Eliezer Reis
SCJP
SCWCD |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 30/03/2009 12:20:59
|
RenataFA
Virtual Machine Man
![[Avatar]](/images/avatar/c05c903e3d997added79518f0e850026.jpg)
Membro desde: 24/08/2006 08:15:10
Mensagens: 698
Offline
|
Eliezer Reis wrote:AuhAuhAuhAAUH. Pior que eu também estou a alguns meses tentando te explicar isso. Que bom que funcionou!
Alias, acaba de me ocorrer que você consegue usar mais de 12 línguas apenas deixando dinâmica a sua classe Constantes.java.
Veja este método da classe Constants.
Você pode fazer este método retornar o resultado de um outro método seu que faz o preenchimento da tradução caso ela não seja suportada pelo JavaHelp.
Existe bem umas 3 possibilidades ainda. Problema e tempo para fazer os testes e te explicar como.
Abraço!
Então! Eu sei disso! Foi isso que eu fiz qdo te falei que eu tinha internacionalizado minha Constants.java! hahahahaha... Eu estou ai chamando meu método de internacionalização!
Então Eliezer, eu lembro que vc me mandou a msg em PVT, mas é que eu não fiquei todo esse tempo mexendo só com isso. Tive umas coisas mais urgentes e parei esse projeto de tudo, só a semana passada que retomei com a intenção de terminar de vez.
Enfim,,, agora deu certo!
VLW
|
[]'s, Renata |
|
|
 |
|
|
|
|