Using VARS via Postgresql on remote server

53 views
Skip to first unread message

Dan Marrable

unread,
Aug 22, 2012, 2:34:14 AM8/22/12
to mbari-vars
Hi I am trying set up VARS to connect to a remote server using
postgresql.

So far I have

Created jnpl files on the remote server and served them via apache2
followed the instructions here http://vars.sourceforge.net/Development/howto_postgresql.shtml
modified my postgresql.conf file to listen_adresses='*' and port=5432
Added the line host VARS varsuser 0.0.0.0/0 password to
pg_hba.conf
created the database
injested the .DDL files and .sql file successfully


When I run the vars-query.jnpl file I created I can bring up the query
gui; but clicking on any of the interface throws and exception (see
below)
When I run the vars-annotation.jnpl file, it doesn't bring up the gui
and throws the same exception

The files I am serving are here http://catami-sandbox.no-ip.org/

And the exception I get is below.

It seems to suggest that it can't connect to the database but I can
telnet in and connect remotely using other software.

Any help understanding this problem would be greatly appreciated

Dan Marrable
iVEC


javax.persistence.PersistenceException: Exception [EclipseLink-4002]
(Eclipse Persistence Services - 2.3.2.v20111125-r10461):
org.eclipse.persistence.exceptions.DatabaseException Internal
Exception: org.postgresql.util.PSQLException: Connection refused.
Check that the hostname and port are correct and that the postmaster
is accepting TCP/IP connections. Error Code: 0
org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.deploy(EntityManagerSetupImpl.java:
517)
org.eclipse.persistence.internal.jpa.EntityManagerFactoryDelegate.getDatabaseSession(EntityManagerFactoryDelegate.java:
188)
org.eclipse.persistence.internal.jpa.EntityManagerFactoryDelegate.createEntityManagerImpl(EntityManagerFactoryDelegate.java:
277)
org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.createEntityManagerImpl(EntityManagerFactoryImpl.java:
294)
org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:
272)
vars.jpa.MiscDAOFactoryImpl.newUserAccountDAO(MiscDAOFactoryImpl.java:
27) vars.annotation.ui.App. (App.java:88) vars.annotation.ui.App
$3.run(App.java:209)
java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:251)
java.awt.EventQueue.dispatchEventImpl(EventQueue.java:711)
java.awt.EventQueue.access$000(EventQueue.java:104) java.awt.EventQueue
$3.run(EventQueue.java:672) java.awt.EventQueue$3.run(EventQueue.java:
670) java.security.AccessController.doPrivileged(Native Method)
java.security.ProtectionDomain
$1.doIntersectionPrivilege(ProtectionDomain.java:76)
java.awt.EventQueue.dispatchEvent(EventQueue.java:681)
java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:
244)
java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:
163)
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:
151) java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:
147) java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:
139) java.awt.EventDispatchThread.run(EventDispatchThread.java:97)
Caused by: Exception [EclipseLink-4002] (Eclipse Persistence Services
- 2.3.2.v20111125-r10461):
org.eclipse.persistence.exceptions.DatabaseException Internal
Exception: org.postgresql.util.PSQLException: Connection refused.
Check that the hostname and port are correct and that the postmaster
is accepting TCP/IP connections. Error Code: 0
org.eclipse.persistence.exceptions.DatabaseException.sqlException(DatabaseException.java:
324)
org.eclipse.persistence.exceptions.DatabaseException.sqlException(DatabaseException.java:
319)
org.eclipse.persistence.sessions.DefaultConnector.connect(DefaultConnector.java:
138)
org.eclipse.persistence.sessions.DatasourceLogin.connectToDatasource(DatasourceLogin.java:
162)
org.eclipse.persistence.internal.sessions.DatabaseSessionImpl.loginAndDetectDatasource(DatabaseSessionImpl.java:
584)
org.eclipse.persistence.internal.jpa.EntityManagerFactoryProvider.login(EntityManagerFactoryProvider.java:
206)
org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.deploy(EntityManagerSetupImpl.java:
488)
org.eclipse.persistence.internal.jpa.EntityManagerFactoryDelegate.getDatabaseSession(EntityManagerFactoryDelegate.java:
188)
org.eclipse.persistence.internal.jpa.EntityManagerFactoryDelegate.createEntityManagerImpl(EntityManagerFactoryDelegate.java:
277)
org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.createEntityManagerImpl(EntityManagerFactoryImpl.java:
294)
org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:
272)
vars.jpa.MiscDAOFactoryImpl.newUserAccountDAO(MiscDAOFactoryImpl.java:
27) vars.annotation.ui.App. (App.java:88) vars.annotation.ui.App
$3.run(App.java:209)
java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:251)
java.awt.EventQueue.dispatchEventImpl(EventQueue.java:711)
java.awt.EventQueue.access$000(EventQueue.java:104) java.awt.EventQueue
$3.run(EventQueue.java:672) java.awt.EventQueue$3.run(EventQueue.java:
670) java.security.AccessController.doPrivileged(Native Method)
java.security.ProtectionDomain
$1.doIntersectionPrivilege(ProtectionDomain.java:76)
java.awt.EventQueue.dispatchEvent(EventQueue.java:681)
java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:
244)
java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:
163)
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:
151) java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:
147) java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:
139) java.awt.EventDispatchThread.run(EventDispatchThread.java:97)
Caused by: org.postgresql.util.PSQLException: Connection refused.
Check that the hostname and port are correct and that the postmaster
is accepting TCP/IP connections.
org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:
136)
org.postgresql.core.ConnectionFactory.openConnection(ConnectionFactory.java:
64) org.postgresql.jdbc2.AbstractJdbc2Connection.
(AbstractJdbc2Connection.java:123)
org.postgresql.jdbc3.AbstractJdbc3Connection.
(AbstractJdbc3Connection.java:28)
org.postgresql.jdbc3g.AbstractJdbc3gConnection.
(AbstractJdbc3gConnection.java:20)
org.postgresql.jdbc4.AbstractJdbc4Connection.
(AbstractJdbc4Connection.java:30)
org.postgresql.jdbc4.Jdbc4Connection. (Jdbc4Connection.java:22)
org.postgresql.Driver.makeConnection(Driver.java:391)
org.postgresql.Driver.connect(Driver.java:265)
java.sql.DriverManager.getConnection(DriverManager.java:579)
java.sql.DriverManager.getConnection(DriverManager.java:190)
org.eclipse.persistence.sessions.DefaultConnector.connect(DefaultConnector.java:
98)
org.eclipse.persistence.sessions.DatasourceLogin.connectToDatasource(DatasourceLogin.java:
162)
org.eclipse.persistence.internal.sessions.DatabaseSessionImpl.loginAndDetectDatasource(DatabaseSessionImpl.java:
584)
org.eclipse.persistence.internal.jpa.EntityManagerFactoryProvider.login(EntityManagerFactoryProvider.java:
206)
org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.deploy(EntityManagerSetupImpl.java:
488)
org.eclipse.persistence.internal.jpa.EntityManagerFactoryDelegate.getDatabaseSession(EntityManagerFactoryDelegate.java:
188)
org.eclipse.persistence.internal.jpa.EntityManagerFactoryDelegate.createEntityManagerImpl(EntityManagerFactoryDelegate.java:
277)
org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.createEntityManagerImpl(EntityManagerFactoryImpl.java:
294)
org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:
272)
vars.jpa.MiscDAOFactoryImpl.newUserAccountDAO(MiscDAOFactoryImpl.java:
27) vars.annotation.ui.App. (App.java:88) vars.annotation.ui.App
$3.run(App.java:209)
java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:251)
java.awt.EventQueue.dispatchEventImpl(EventQueue.java:711)
java.awt.EventQueue.access$000(EventQueue.java:104) java.awt.EventQueue
$3.run(EventQueue.java:672) java.awt.EventQueue$3.run(EventQueue.java:
670) java.security.AccessController.doPrivileged(Native Method)
java.security.ProtectionDomain
$1.doIntersectionPrivilege(ProtectionDomain.java:76)
java.awt.EventQueue.dispatchEvent(EventQueue.java:681)
java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:
244)
java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:
163)
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:
151) java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:
147) java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:
139) java.awt.EventDispatchThread.run(EventDispatchThread.java:97)
Caused by: java.net.ConnectException: Connection refused
java.net.PlainSocketImpl.socketConnect(Native Method)
java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:
339)
java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:
200)
java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:
182) java.net.SocksSocketImpl.connect(SocksSocketImpl.java:391)
java.net.Socket.connect(Socket.java:579)
java.net.Socket.connect(Socket.java:528) java.net.Socket. (Socket.java:
425) java.net.Socket. (Socket.java:208) org.postgresql.core.PGStream.
(PGStream.java:60)
org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:
74)
org.postgresql.core.ConnectionFactory.openConnection(ConnectionFactory.java:
64) org.postgresql.jdbc2.AbstractJdbc2Connection.
(AbstractJdbc2Connection.java:123)
org.postgresql.jdbc3.AbstractJdbc3Connection.
(AbstractJdbc3Connection.java:28)
org.postgresql.jdbc3g.AbstractJdbc3gConnection.
(AbstractJdbc3gConnection.java:20)
org.postgresql.jdbc4.AbstractJdbc4Connection.
(AbstractJdbc4Connection.java:30)
org.postgresql.jdbc4.Jdbc4Connection. (Jdbc4Connection.java:22)
org.postgresql.Driver.makeConnection(Driver.java:391)
org.postgresql.Driver.connect(Driver.java:265)
java.sql.DriverManager.getConnection(DriverManager.java:579)
java.sql.DriverManager.getConnection(DriverManager.java:190)
org.eclipse.persistence.sessions.DefaultConnector.connect(DefaultConnector.java:
98)
org.eclipse.persistence.sessions.DatasourceLogin.connectToDatasource(DatasourceLogin.java:
162)
org.eclipse.persistence.internal.sessions.DatabaseSessionImpl.loginAndDetectDatasource(DatabaseSessionImpl.java:
584)
org.eclipse.persistence.internal.jpa.EntityManagerFactoryProvider.login(EntityManagerFactoryProvider.java:
206)
org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.deploy(EntityManagerSetupImpl.java:
488)
org.eclipse.persistence.internal.jpa.EntityManagerFactoryDelegate.getDatabaseSession(EntityManagerFactoryDelegate.java:
188)
org.eclipse.persistence.internal.jpa.EntityManagerFactoryDelegate.createEntityManagerImpl(EntityManagerFactoryDelegate.java:
277)
org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.createEntityManagerImpl(EntityManagerFactoryImpl.java:
294)
org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:
272)
vars.jpa.MiscDAOFactoryImpl.newUserAccountDAO(MiscDAOFactoryImpl.java:
27) vars.annotation.ui.App. (App.java:88) vars.annotation.ui.App
$3.run(App.java:209)
java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:251)
java.awt.EventQueue.dispatchEventImpl(EventQueue.java:711)
java.awt.EventQueue.access$000(EventQueue.java:104) java.awt.EventQueue
$3.run(EventQueue.java:672) java.awt.EventQueue$3.run(EventQueue.java:
670) java.security.AccessController.doPrivileged(Native Method)
java.security.ProtectionDomain
$1.doIntersectionPrivilege(ProtectionDomain.java:76)
java.awt.EventQueue.dispatchEvent(EventQueue.java:681)
java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:
244)
java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:
163)
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:
151) java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:
147) java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:
139) java.awt.EventDispatchThread.run(EventDispatchThread.java:97)

Brian Schlining

unread,
Aug 22, 2012, 2:26:52 PM8/22/12
to mbari...@googlegroups.com
Hi Dan
Hi I am trying set up VARS to connect to a remote server using
postgresql.

[…]


The files I am serving are here http://catami-sandbox.no-ip.org/

And the exception I get is below.

It seems to suggest that it can't connect to the database but I can
telnet in and connect remotely using other software.

Any help understanding this problem would be greatly appreciated
I tried to connect using your JNLP file and I got the following exception:

Internal Exception: org.postgresql.util.PSQLException: Connection refused. Check that the hostname and port are correct and that the postmaster is accepting TCP/IP connections.

I tried connecting with a manual JDBC tool and was able to connect with no problems. However, I did see that all your VARS tables belong to the 'public' schema. That might be the problem. I'm setting a postgresql server to run some tests and see what's going on.

Cheers

-- 
Brian Schlining 

Brian Schlining

unread,
Aug 22, 2012, 4:00:46 PM8/22/12
to mbari...@googlegroups.com
Hi Dan,

I walked through the howto at http://vars.sourceforge.net/Development/howto_postgresql.shtml and repeated all the steps on a fresh install of postgres 9.1 and everything worked fine. The only things I can think of for you to try are to:
a) double check that you set the postgresql configurations correctly (as outlined in the howto)
b) Set a password for the 'varsuser' postgres user. You can do that using 'psql' with:
    ALTER USER varsuser WITH password 'somepassword';
  Make sure that you configure the correct passwords in the files described in the 'Configuring VARS section. You haven't set a password for the 'varsuser' account and that might be causing problems (I'm guessing here since I've never tried to use a user without a password).

Anyway, try that and if you're still having issues we can revisit it.

Cheers


It seems to suggest that it can't connect to the database but I can
telnet in and connect remotely using other software.

-- 
Brian Schlining

Reply all
Reply to author
Forward
0 new messages