GWT - Google Web Toolkit - Debug em Hosted Mode não para em breakpoint (eclipse)

11 respostas
5leipn1r

Estou passando pelo seguinte problema e gostaria de susgestões.
Tenho uma aplicação rodando no tomcat, que se utiliza do GWT, e estou enfrentando problemas para debugar o lado client no eclipse. Outras aplicações testes que fiz funcionam normalmente o debug, porém esta em particular não. Após configurar o eclipse consigo até rodar em modo debug, mas não para nos breakpoints.
Preciso de um caminho das pedras, se a duvida tiver muito vaga, por favor informem que informação mais é necessária para que possam me ajudar.
Ou então, melhor ainda, algumém poderia me explicar passo a passo na teoria como debugar a parte client do GWT. Ai eu comparo com o que foi feito aqui pra tentar achar o que estou fazendo errado.
Uma informação adicional: A area de desenvolvimento é linux.

Agradeço desde já a atenção.

Att

11 Respostas

5leipn1r

Eu tenho mais uma informação que talvez possa ajudar algum expert em GWT a me dar uma ajuda.
Descobri que o ANT que compila tudo compila 2 programas diferentes e depois move eles pra uma outra pasta pra que fiquem ambos sob o mesmo contexto. Parece que o problema é que quando se altera a estrutura dos diretórios depois de compilado o GWT se perde no debug do hosted mode.
Alguém tem alguma sugestão?
Obrigado.

peerless

Você está recompilando (usando o compilador do gwt) suas classes GWT a cada alteração? Está debugando pelo shell do GWT?

5leipn1r

Estou usando o eclipse pra desenvolver e debugar, existe um script ANT que quando eu compilo o codigo JAVA eje já compila o codigo GWT pra javascript e move tudo pra uma pasta especifica no tomcat pra que as duas aplicaçõe srodem sob o mesmo contexto.
Acredito que esteja aí o problema. Mas eu preciso encontrar uma solução.
Valew.

C

Achou uma solução? Estou passando pelo mesmo problema…

5leipn1r

Olá Cristiano.
Eu encontrei a solução, mas foi um trabalho em equipe, não sei se tenho todas as chaves para a solução, mas aí vai algumas dicas:

  1. Verificar se não tem bibliotecas conflitantes do GWT no projeto, por exemplo, bibliotecas de versões diferentes do GWT no classpath.

  2. Na perspectiva de Debug criar uma nova configuração de debug com as seguintes configurações:

Aba main:
Project: nome do project
Main class: com.google.gwt.dev.GWTShell

Aba arguments:
Program arguments: -out www -noserver http://url da sua máquina)
VM arguments: -Xmx512M

Aba classpath:
Botão Advanced -> Add Folders: Adicionar a pasta src do projeto
Botão Add external jars -> Adicionar o jar /usr/share/java/gwt-1.4/gwt-dev-linux.jar

Aba common:
Display in favorites menu: Selecionar debug.

  1. Na aba arguments, adicionem o seguinte em ‘Program arguments’: -whitelist “http://..*/contexto/pagina.html”
    Isto fará com que o hosted mode não reclame da sua URL sempre que for executar o debug.

Fora isso acho você tem que criar um link simbolico com uma pasta www apontando para a pasta para onde os arquivos compilados são movidos.

Espero que isto te ajude.

Abraços.

jimmyhc

Bahhh mew tu me ajudou muitoo…

Obrigado!!

5leipn1r:
Olá Cristiano.
Eu encontrei a solução, mas foi um trabalho em equipe, não sei se tenho todas as chaves para a solução, mas aí vai algumas dicas:

  1. Verificar se não tem bibliotecas conflitantes do GWT no projeto, por exemplo, bibliotecas de versões diferentes do GWT no classpath.

  2. Na perspectiva de Debug criar uma nova configuração de debug com as seguintes configurações:

Aba main:
Project: nome do project
Main class: com.google.gwt.dev.GWTShell

Aba arguments:
Program arguments: -out www -noserver http://url da sua máquina)
VM arguments: -Xmx512M

Aba classpath:
Botão Advanced -> Add Folders: Adicionar a pasta src do projeto
Botão Add external jars -> Adicionar o jar /usr/share/java/gwt-1.4/gwt-dev-linux.jar

Aba common:
Display in favorites menu: Selecionar debug.

  1. Na aba arguments, adicionem o seguinte em ‘Program arguments’: -whitelist “http://..*/contexto/pagina.html”
    Isto fará com que o hosted mode não reclame da sua URL sempre que for executar o debug.

Fora isso acho você tem que criar um link simbolico com uma pasta www apontando para a pasta para onde os arquivos compilados são movidos.

Espero que isto te ajude.

Abraços.

serathiuk

Outra solução seria se você estiver usando o Eclipse, dá para usar o plugin do Google, que deixa tudo configurado para você já(e traz umas facilidades para o GWT).

jimmyhc

Não cara…o eclipse deixa a configuração padrao de debug. Que para o App Engine realmente não funciona.

Tem que fazer oq o amigo 5leipn1r disse. Isso funciona!!!

Abçs!!

vinihds

To passando pelo mesmo problema…vou tentar implantar isso !!

vinihds

Acontece esse erro:

Exception in thread main java.lang.ExceptionInInitializerError

Caused by: java.lang.NullPointerException

at com.google.gwt.util.tools.Utility.computeInstallationPath(Utility.java:282)

at com.google.gwt.util.tools.Utility.getInstallPath(Utility.java:223)

at com.google.gwt.util.tools.ToolBase.(ToolBase.java:55)

Could not find the main class: com.google.gwt.dev.GWTShell. Program will exit.

Será que é porque eu estou usando a openJDK ?

vinihds

Eu testei no windows e funcionou corretamente !! q doidera !!!

Criado 24 de outubro de 2008
Ultima resposta 10 de nov. de 2010
Respostas 11
Participantes 6