Su URL de JDBC es "jdbc:postgresql:postgres/tommy", lo cual es inusual. La documentación sugiere "jdbc://hostname/databasename". Las instalaciones modernas vienen con una base de datos "postgres" que casi definitivamente no es a lo que desea conectarse; No sé qué tan estricto es el análisis de URL del controlador JDBC.
¿Cuál espera que sea el nombre de su base de datos y el nombre de host? p.ej. ¿Cuáles son sus parámetros para que psql se conecte a la base de datos de esa manera?
Sugerencia:en postgresql.conf, algunas configuraciones que puede considerar:
log_connections = on
log_disconnections = on
log_line_prefix = '%t %c %q%[email protected]%h:%d '
Si el error es lo que pienso (se está conectando a la base de datos incorrecta), esto registraría cosas como el nombre de la base de datos junto con el error en su archivo postgresql.log.