Se il certificato utilizzato dal server Postgres non è considerato attendibile dal truststore predefinito di Java, dovrai aggiungerlo.
Innanzitutto, converti il tuo certificato in un formato DER :
openssl x509 -outform der -in server-ca.pem -out server-ca.der
E dopo, importalo nel keystore :
keytool -import -trustcacerts -alias your-alias -keystore cacerts -file server-ca.der
In alternativa, puoi utilizzare le proprietà di Java System per modificare il truststore utilizzato aggiungendo parametri della riga di comando:
-Djavax.net.ssl.trustStore=<path to your trusstore>.jks -Djavax.net.ssl.trustStorePassword=<your password>
Può anche essere utile mettere in debug le classi Java SSL aggiungendo quanto segue alla riga di comando di avvio:
-Djavax.net.debug=ssl,handshake:verbose