usar supabase en render.com
en render:
en las variables de entorno de la aplicacion
SPRING_DATASOURCE_URL:
jdbc:postgresql://[EL_HOST_QUE_TE_DA_SUPABASE]:5432/postgres
(Asegúrate de que empiece por jdbc:postgresql://.).
SPRING_DATASOURCE_USERNAME:
SPRING_DATASOURCE_PASSWORD:
Muchas veces, al conectar Spring Boot con Supabase desde un servidor externo como Render, la conexión falla porque falta el certificado SSL.
agregar al final de la URL:
?ssl=true&sslmode=require
Spring Boot usa HikariCP por defecto. Si no puede establecer la conexión inicial con Supabase en menos de 30 segundos, el "Bean" de la base de datos se crea incompleto y lanza ese NullPointerException.
Solución: Añade estas variables de entorno en Render para darle más tiempo y estabilidad a la conexión:
SPRING_DATASOURCE_HIKARI_CONNECTION_TIMEOUT:30000(30 segundos)SPRING_DATASOURCE_HIKARI_MAXIMUM_POOL_SIZE:5(El plan gratuito de Supabase tiene un límite de conexiones, no pongas un número alto aquí).
Si ya configuraste las variables de entorno en el panel de Render, Spring Boot las tomará como prioridad sobre cualquier archivo. Sin embargo, es una buena práctica dejar el archivo preparado para que "escuche" las variables de entorno. Así, si alguna vez cambias de servidor, solo cambias la variable en el panel y no tocas el código.
Agrega esta variable de entorno en Render para forzar a Java a usar IPv4:
Key:
JAVA_TOOL_OPTIONSValue:
-Djava.net.preferIPv4Stack=true
Comentarios
Publicar un comentario