2010-11-09 6 views
6

Parece que me estoy encontrando con un problema extraño. Cuando uso mi aplicación GWT en un entorno local, todo funciona como debería. El problema viene después de que compilo y despliegue mi aplicación. Cuando voy a través de mi flujo de trabajo de proyecto y haga clic en un enlace determinado a cambiar a un nuevo panel, me sale el siguiente error (de mi consola en Chrome):¿Qué podría causar una función anónima UmbrellaException en la aplicación GWT desplegada?

Uncaught com.google.gwt.event.shared.UmbrellaException: One or more exceptions 
caught, see full set in UmbrellaException#getCauses (anonymous function) 

Este error se produce por uno de los archivos de caché generado por GWT en tiempo de compilación. Pero esto nunca ocurre en el programa desplegado localmente (implementado desde Eclipse, "Ejecutar como aplicación web"). ¿Alguna vez alguien se ha encontrado con este problema o puede proporcionarle alguna dirección para solucionarlo?

¡Gracias! :)

+1

¿Cuál es el seguimiento de la pila completa? UmbrellaExceptions incluye qué error lo causó, más abajo en la pila. –

+0

No hay ningún rastro de pila. La consola de error de Chrome solo muestra esa excepción y dice "(función anónima)" Cuando acaba de implementar localmente con Eclipse, esta excepción no ocurre, por lo que no hay ningún rastro. –

+1

ponga una captura de prueba e imprima los restos de la pila de las excepciones anidadas. – crowne

Respuesta

2

Tuve el mismo problema ahora. Funciona localmente, falla con el error de la consola Javascript mencionado, nada en los registros del servidor.

Resulta que el código Java del cliente (que se cumple con Javascript) tenía un bloque try/catch que funcionaba cuando se ejecutaba en Java, pero fallaba silenciosamente cuando se compilaba en Javascript. Todavía no estoy seguro de cuál era la naturaleza exacta del problema, pero intente eliminar los bloques try/catch.

(Parece que en mi caso, table.getWidget() llamada estaba fallando y lanzar una excepción.)

+0

La mejor respuesta hasta el momento. En realidad, nunca llegamos a la raíz del problema, sino que cambiamos nuestro flujo de trabajo de transición del panel y eso pareció resolver el problema. ¡Gracias! –

1

he tenido el mismo problema, yo creo que la interpretación del intento de captura no es el mismo que en Java ... después de la compilación GWT , cuando está en el caso de captura, la ejecución falla. Si abre firebug, puede ver el punto de error en JS.

1

Tuve el mismo problema, funcionó en modo de desarrollo. Luego, después de compilar, obtendría un error. Para solucionar, tenía que deshacerse de:

try{ 
    //some code 
} catch(NullPointerException ex){ 
    //more code 
} 

En lugar de eso hicieron:

if(variable != null){ 
    //some code 
} else { 
    //more code 
} 

Después de eso funcionó a la perfección.

Cuestiones relacionadas