我有一台运行的JBoss服务器,想要部署服务。 该服务连接到在以下xml文件
中配置的数据库<?xml version="1.0" encoding="UTF-8"?>
<datasources xmlns="http://www.jboss.org/ironjacamar/schema">
<datasource jta="false" jndi-name="java:/PMBootStrapDS"
pool-name="PMBootStrapDS" enabled="true" use-ccm="false">
<connection-url>jdbc:postgresql://localhost:5432/i2b2</connection-url>
<driver-class>org.postgresql.Driver</driver-class>
<driver>postgresql-9.2-1002.jdbc4.jar</driver>
<security>
<user-name>i2b2pm</user-name>
<password>demouser</password>
</security>
<validation>
<validate-on-match>false</validate-on-match>
<background-validation>false</background-validation>
</validation>
<statement>
<share-prepared-statements>false</share-prepared-statements>
</statement>
</datasource>
</datasources>
要在不同的系统上轻松部署它,我想将数据库位置绑定到环境变量。 我试过这样的事情
<connection-url>jdbc:postgresql://${env.MY_DB_LOCATION}/i2b2</connection-url>
但它不起作用。
有关如何解决此问题的任何建议?
答案 0 :(得分:4)
确保在standalone.xml中启用了属性替换。
在standalone.xml中查找以下子项,并确保将值设置为true
<subsystem xmlns="urn:jboss:domain:ee:1.1">
<spec-descriptor-property-replacement>true</spec-descriptor-property-replacement>
<jboss-descriptor-property-replacement>true</jboss-descriptor-property-replacement>
</subsystem>
编辑:仅支持eap6和jboss 7.1.2(或更高版本)