在 system.properties 而不是 tomee.conf 中配置 TomEE 中的数据源

Configure a DataSource in TomEE in system.properties instead of tomee.conf

我可以通过修改 "conf/tomee.xml" 文件在 TomEE 中配置数据源资源。但是,自动执行此修改有点尴尬,因为我必须在“”行之前插入 DataSource 定义。我从 related SO posting from me 中的一条评论中得知,更容易附加到 "system.properties" 文件。

所以,我尝试翻译这个:

<Resource id="sus2" type="DataSource">
    JdbcDriver = oracle.jdbc.driver.OracleDriver
    MaxActive = 10
    MinIdle = 2
    MaxIdle = 2 
    MaxWait = 10000
   JdbcUrl = jdbc:oracle:thin:@${DB_HOST}:${DB_PORT}:${DB_SID}
   UserName = ${DB_USER}
   Password = ${DB_PASSWORD}
</Resource>

哪个有效,如下:

db = new://Resource?type=DataSource
db.id = Resource/sus2
db.JdbcDriver = oracle.jdbc.driver.OracleDriver
db.MaxActive = 10
db.MinIdle = 2
db.MaxIdle = 2 
db.MaxWait = 10000
db.JdbcUrl = jdbc:oracle:thin:@${DB_HOST}:${DB_PORT}:${DB_SID}
db.UserName = ${DB_USER}
db.Password = ${DB_PASSWORD}

这是行不通的。它失败了,说找不到 "Resource/sus2" 资源。

可在 http://tomee.apache.org/ng/admin/configuration/resources.html

找到配置参考

你必须明白 XML 属性成为 URI 查询参数然后我认为它会起作用。

换句话说:

db = new://Resource?type=DataSource

变成

sus2 = new://Resource?type=DataSource

而您的 db.id 没有做任何事情 - 我认为它已被记录。

简而言之:用 "sus2" 替换你所有的 "db" 就可以了