我目前正在使用JNDI查找从Tomcat的context.xml获取MySQL或PostgreSQL的数据源。 我的context.xml如下所示:
<Resource name="jdbc/MyDataSource"
auth="Container"
type="javax.sql.DataSource"
username="user"
password="pass"
driverClassName="org.postgresql.Driver"
url="jdbc:postgresql://servername:5432/database"
maxActive="20"
maxIdle="10"
validationQuery="Select 1"
/>
但是,我的一个客户正在使用 Heroku 进行部署,我想知道如何在那里设置我的数据源以及如何使用JNDI查找从我的Java Web应用程序中读取它。 在Heroku中我使用的是heroku-deploy plugin with Tomcat
答案 0 :(得分:2)
您可以将context.xml
文件传递给webapp-runner的--context-xml
选项,该选项由heroku-deploy使用。为此,请设置如下所示的配置:
$ heroku config:set WEBAPP_RUNNER_OPTS="--context-xml context.xml"
然后在部署时,包括context.xml
这样的文件:
$ heroku deploy:war --war app.war --includes context.xml
详细介绍了这一点