El error 500 no es un error de MySQL, sino del servidor web, y por tanto es un asunto que deberías consultar en otro foro (lamentablemente yo no modero éste, por lo que no puedo moverte el post).
Esta es una explicación del asunto que tal vez te oriente mejor:
Error 500: Error interno del servidor.
Por cierto, los errores mostrados en la pila de Java, tampoco son asunto de MySQL, y no nos aportan nada concreto al respecto.
Este foro trata de SQL y MySQL. Nada más.
Si el problema está en el Hibernate y/o Java, mi sugerencia es que preguntes en el foro de Java, donde seguro que te ayudarán mejor.