2016-04-09 13 views
0

Ich versuche, eine schnelle Datenquelle einzurichten, die für Integrationstests verwendet wird, also anstatt sie auf dem App-Server zu konfigurieren - Wildfly 10 - würde ich es am schnellsten bereitstellen . DiesePostgres Datasource Definition - Verbindung verweigert

ist, wie ich es konfiguriert:

@DataSourceDefinitions({ 
    @DataSourceDefinition(
      name = "java:/datasources/testdb", 
      className = "org.postgresql.xa.PGXADataSource", 
      user = "testdb", 
      password = "testdb", 
      serverName = "localhost", 
      portNumber = 5432, 
      databaseName = "testdb", 
      minPoolSize = 10, 
      maxPoolSize = 50) 
}) 
public class DatasourceDefinitions {} 

Ich habe versucht, mit localhost, 127.0.0.1 und mit dem Parameter url anstelle des dreifachen serverName, port und databaseName, aber ich laufe immer in einen Connection Refused Fehler

Caused by: java.net.ConnectException: Connection refused 
    at java.net.PlainSocketImpl.socketConnect(Native Method) 
    at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350) 
    at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206) 
    at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188) 
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392) 
    at java.net.Socket.connect(Socket.java:589) 
    at java.net.Socket.connect(Socket.java:538) 
    at java.net.Socket.<init>(Socket.java:434) 
    at java.net.Socket.<init>(Socket.java:211) 
    at org.postgresql.core.PGStream.<init>(PGStream.java:62) 
    at org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:76) 
    ... 41 more 

ich habe überprüft bereits user und password und sie arbeiten jus OK, wenn ich versuche, mich mit pgAdmin einzuloggen.

ist hier Postgres Konfiguration:

# Database administrative login by Unix domain socket 
local all    postgres        peer 

# TYPE DATABASE  USER   ADDRESS     METHOD 

# "local" is for Unix domain socket connections only 
local all    all          md5 
# IPv4 local connections: 
host all    all    127.0.0.1/32   md5 
# IPv6 local connections: 
host all    all    ::1/128     md5 
# Allow replication connections from localhost, by a user with the 
# replication privilege. 
#local replication  postgres        peer 
#host replication  postgres  127.0.0.1/32   md5 

Ich ermöglichte auch die Linie

listen_addresses = 'localhost'   # what IP address(es) to listen on; 

in der Konfigurationsdatei postgresql.conf

Kann mir jemand sagen, was ich bin fehlt und/oder zu tun falsch?

+0

Verwenden Sie die normale Postgres-Treiberklasse. – ManoDestra

+0

@ManoDestra nope .... 'Verursacht von: java.lang.ClassCastException: org.postgresql.Driver kann nicht in javax.sql.DataSource' umgewandelt werden –

Antwort

0

Gelöst. Das Problem war in Postgres Konfiguration, nämlich in Datei /etc/postgresql/9.4/main/postgresql.conf.

Ich änderte dieses

listen_addresses = 'localhost' 

in diesem

listen_addresses = '127.0.0.1' 

und jetzt funktioniert es perfekt.

Verwandte Themen