0

Tomcat7 での接続プールの実装に問題があります。何らかの理由で、Tomcat が自分のマシンのユーザー名に接続しようとしています。私はしばらくの間それをググっていましたが、運がありませんでした。

org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory 
(FATAL: role "caspinol" does not exist)
Cant connect to db
Log In failed: An Exception has occurred! java.lang.NullPointerException
java.lang.NullPointerException
 at org.apache.tomcat.dbcp.dbcp.BasicDataSource.createPoolableConnectionFactory(BasicDataSource.java:1549)...

私の context.xml は次のようになります。

<Resource auth="Container" name="jdbc/postgres" type="javax.sql.DataSource" user="biller" password="biller" 
            driverClassName="org.postgresql.Driver" url="jdbc:postgresql://localhost:5432" maxActive="150"
            schema="biller" maxIdle="4"/>

そしてweb.xml:

<resource-ref>
    <description>postgreSQL Datasource</description>
    <res-ref-name>jdbc/postgres</res-ref-name>
    <res-type>javax.sql.DataSource</res-type>
    <res-auth>Container</res-auth>
</resource-ref>

jdbc4.jar postgres ドライバーを使用しています。誰かが見て、間違いを指摘していただければ幸いです

前もって感謝します

4

2 に答える 2

0

これは問題の正しい解決策ではありませんが、同じ問題を正しい接続文字列で検索するのに役立ちます。

ネットワーク接続アクセスを確認します: 接続文字列など

jdbc:postgresql://[::1]:5432/<db_name>

IPv6 を使用します。これにより、IPv4 経由でのみ利用可能なアプリケーションからの wsdl URL へのアクセスなど、他の接続が切断されます。ネットワーク接続、特に Windows 8 を見てください。

于 2014-04-16T04:16:08.727 に答える
0

URLが間違っているようです。この URL を試してください:

jdbc:postgresql://localhost:5432/<db_name>

<db_name>を実際のデータベース名に置き換えます。

于 2012-04-26T06:26:05.043 に答える