Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Postgresql 为什么我的Play/Heroku/Postgres部署会因密码错误而失败?_Postgresql_Heroku_Playframework_Playframework 2.0 - Fatal编程技术网

Postgresql 为什么我的Play/Heroku/Postgres部署会因密码错误而失败?

Postgresql 为什么我的Play/Heroku/Postgres部署会因密码错误而失败?,postgresql,heroku,playframework,playframework-2.0,Postgresql,Heroku,Playframework,Playframework 2.0,我开始使用Play框架,有一个使用H2内存数据库在本地运行的玩具应用程序。我的application.conf文件如下所示: db.default.driver=org.h2.Driver db.default.url="jdbc:h2:mem:my-app-db" db.default.user=sa db.default.password="" 但是,当我尝试使用他们提供的Postgres数据库将应用程序部署到Heroku时,部署失败: org.postgresql.util.PSQLEx

我开始使用Play框架,有一个使用H2内存数据库在本地运行的玩具应用程序。我的
application.conf
文件如下所示:

db.default.driver=org.h2.Driver
db.default.url="jdbc:h2:mem:my-app-db"
db.default.user=sa
db.default.password=""
但是,当我尝试使用他们提供的Postgres数据库将应用程序部署到Heroku时,部署失败:

org.postgresql.util.PSQLException: FATAL: password authentication failed for user "sa"
2013-05-17T01:22:18.982766+00:00 app[web.1]:    at org.postgresql.core.ConnectionFactory.openConnection(ConnectionFactory.java:66)
2013-05-17T01:22:18.982827+00:00 app[web.1]:    at org.postgresql.jdbc2.AbstractJdbc2Connection.<init>(AbstractJdbc2Connection.java:125)
2013-05-17T01:22:18.983634+00:00 app[web.1]:    at com.jolbox.bonecp.BoneCPDataSource.getConnection(BoneCPDataSource.java:112)
2013-05-17T01:22:18.982915+00:00 app[web.1]:    at org.postgresql.jdbc3.AbstractJdbc3Connection.<init>(AbstractJdbc3Connection.java:30)
2013-05-17T01:22:18.982665+00:00 app[web.1]:    at org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:108)
2013-05-17T01:22:18.982981+00:00 app[web.1]:    at org.postgresql.jdbc3g.AbstractJdbc3gConnection.<init>(AbstractJdbc3gConnection.java:22)
2013-05-17T01:22:18.983376+00:00 app[web.1]:    at java.sql.DriverManager.getConnection(DriverManager.java:200)

问题在于,这两个属性干扰了Postgres:

db.default.user=sa
db.default.password=""
(Postgres的URL中已经有用户名和密码,如果您运行
heroku config
并查看
DATABASE\u URL
属性,就可以看到这一点。)


当我把以上两行注释掉并再次推到Heroku时,Postgres工作正常,H2仍然在本地工作。

感谢分享。我不敢相信这个问答只有一个月了。。。我的意思是,Play2.x在文档方面还不成熟。这是我在遵循所有官方文档进行第一次部署时遇到的一个基本错误,该部署涉及数据库。
db.default.user=sa
db.default.password=""