Обсуждение: GCJ, SSL Connection Issue

Поиск
Список
Период
Сортировка

GCJ, SSL Connection Issue

От
Chad Files
Дата:
I am having issues connecting to a remote postgres server over SSL
using the GCJ interpreter. I have researched the issue all day and
have not got close to solving it. Any help would be appreciated.

Here is the connection code I am using...

Class.forName("org.postgresql.Driver");
String url = "jdbc:postgresql://server/database";
Properties props = new Properties();
props.setProperty("user","na");
props.setProperty("password","na");
props.setProperty("ssl","true");
Connection conn = DriverManager.getConnection(url, props);

Here is the error message...

Caused by: java.lang.RuntimeException: error instantiating default
socket factory: java.security.NoSuchAlgorithmException: SSLv3

I tried using different sslFactory settings like so...

props.setProperty("sslfactory", "org.postgresql.ssl.NonValidatingFactory");

I also used the javax.net.ssl.SSLServerSocketFactory class in the
jessie package. With both of these classes I get the error...

The SSLSocketFactory class provided
org.postgresql.ssl.NonValidatingFactory could not be instantiated.

Re: GCJ, SSL Connection Issue

От
Kris Jurka
Дата:

On Tue, 29 Nov 2005, Chad Files wrote:

> I am having issues connecting to a remote postgres server over SSL
> using the GCJ interpreter. I have researched the issue all day and
> have not got close to solving it. Any help would be appreciated.
>
> Caused by: java.lang.RuntimeException: error instantiating default
> socket factory: java.security.NoSuchAlgorithmException: SSLv3
>

This is a limitation of gcj, it doesn't come with a SSL provider by
default.  You'll need jessie: http://www.nongnu.org/jessie/

Kris Jurka

Re: GCJ, SSL Connection Issue

От
Chad Files
Дата:
On 11/29/05, Kris Jurka <books@ejurka.com> wrote:
> This is a limitation of gcj, it doesn't come with a SSL provider by
> default.  You'll need jessie: http://www.nongnu.org/jessie/

I tried using Jessie yesterday with no success. This morning I decided
to read the documentation again to see if I was doing things
correctly. Then I discovered the real issue...The documentation is not
correct for the addProvider method. It should read:

java.security.Security.addProvider(new org.metastatic.jessie.provider.Jessie());

(the provider package is not mentioned in the documentation)

I am sure with the latest version they just moved some classes around.
Anyway I am now able to connect to Postgres remotely over SSL with
GCJ. Here is my connection code encase it is useful for anybody else.

java.security.Security.addProvider(new org.metastatic.jessie.provider.Jessie());

Class.forName("org.postgresql.Driver");
String url = "jdbc:postgresql://server/database";
Properties props = new Properties();
props.setProperty("user","na");
props.setProperty("password","na");
props.setProperty("ssl","true");
props.setProperty("sslfactory", "org.postgresql.ssl.NonValidatingFactory");
Connection conn = DriverManager.getConnection(url, props);

Thank you for your help.

-- Chad