2011-01-31 11 views
14

Tengo una aplicación web java GAE con datanucleus como proveedor de JPA. Al implementar localmente en mi máquina, la implementación se cuelga (lleva minutos). Al mirar al administrador de tareas tengo un proceso javac en ejecución. ¿Alguna idea de lo que va mal?Google App Engine con implementación de JPA se bloquea

+0

obtengo esto también. termina viniendo bien cancelando y retrocediendo e intenta de nuevo. algunas veces incluso lleva algunas. Tengo sospechas de que la aplicación no está comenzando correctamente (y a veces esto está fundado [compruebe sus registros]) pero otras veces simplemente toma una eternidad por alguna razón. – Steven

+2

¿Qué quiere decir con "implementación local"? Estás ejecutando localmente o implementándolo, no ambos. –

+0

¿Puedes publicar tu web.xml y appengine-web.xml? –

Respuesta

0

La respuesta depende de varios parámetros

  • ¿Cómo se implementa, ¿está utilizando Eclipse o la línea de comandos?
  • Versión de GAE (y versión del plugin de eclipse GAE/GWT)
  • ¿Windows o Linux?

En cualquier caso, un Thread Dump puede ayudar a ver qué subprocesos no daemon están atascados.

Para línea de comandos despliegue en de Windows - pulse Ctrlrotura después de que se cuelga para obtener el volcado de hilo

En Eclipse, si hay una manera de desplegar en modo de depuración, mira la pila de vista de depuración para la misma información
Ver también esta respuesta: How to Force Thread Dump in Eclipse?

0

Esto depende de qué plataforma ur usando

  1. de Windows
  2. Linux
  3. mac os x

puede comprobar lo que está pasando por checksignal

enviando una señal

Usage: 

SendSignal <pid> 
    <pid> - send ctrl-break to process <pid> (hex ok) 
You can get the source via anonymous CVS at 

cvs -d :pserver:[email protected]:/code-cvsroot co 2003/SendSignal 
1

De acuerdo. Es el problema con GAE, ya que requiere una compilación de 6permutation solo después de lo cual la aplicación se implementará y se mostrará en el navegador. Siento que es el problema solo con GAE y no con JPA. He desarrollado una aplicación similar y si sientes que es debido a JPA, puedes consultar el administrador de la base de datos correspondiente para ver cuántos hilos se están abriendo para el usuario. Si parece que algunos no se recogen basura, verifique su código. De lo contrario, puede usar el mecanismo ConnectionPooling (para acelerar la recuperación de datos mediante ORM) .....

0

Recientemente implementé mi aplicación simple en el motor de aplicaciones de Google a través de eclipse. No se pudo implementar un par de veces. después de algún tiempo, se implementa con éxito. Pude acceder a la aplicación. si se bloquea, detenga el proceso de implementación y vuelva a configurar