2016-05-17 61 views
1

我目前使用JNDI查找從Tomcat的context.xml中爲MySQL或PostgreSQL獲取數據源。 我的context.xml是這樣的:使用JNDI查找在Heroku部署中配置數據源

<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的部署,我想知道怎樣才能把我的數據源那裏,如何從我的Java web應用程序閱讀使用JNDI查找。 在Heroku的我現在用的是heroku-deploy plugin with Tomcat

回答

2

您可以通過context.xml文件的webapp亞軍,這是通過使用Heroku上部署的--context-xml選項。要做到這一點,設置一個配置VAR是這樣的:

$ heroku config:set WEBAPP_RUNNER_OPTS="--context-xml context.xml" 

然後,當你部署,包括context.xml文件是這樣的:

$ heroku deploy:war --war app.war --includes context.xml 

對此進行了詳細的Configuring WAR Deployment with the Heroku Toolbelt

+0

這似乎說明工作,但我仍然得到一個NoInitialContextException在http://stackoverflow.com/questions/33235127/noinitialcontextexception-heroku-war-deploy –

相關問題