所以,我有一种情况,我将部署多个ear文件,我需要使用不同的数据库(可能)配置每个文件 .
现在我有一个部署在JBoss中的* -ds.xml文件,其中包含一个JNDI名称,我的所有portlet和servlet都用它来查找数据库连接 . 如果我使用* -ds.xml文件部署多个ear文件,该文件指向不同的数据库,但具有相同的JNDI名称,则部署barfs . 在部署不同的应用程序以隔离它们时,JNDI不应该更加模块化以防止命名冲突 .
在代码中更改我的查找需要相当长的时间,那么部署方法是否有效?我唯一的另一个想法是将JNDI属性设置为要查找的数据源名称的值,然后首先查找该JNDI属性并根据检索到的“密钥”检索数据源 . 这对我来说似乎有些惹人注意......
1 回答
您可以在应用程序服务器上使用不同的名称(在服务器名称空间上)定义不同的数据源,然后通过部署xml将其映射到资源引用名称(此时组件名称空间,因此每个应用程序可以拥有自己的名称)文件 .
对于JBoss之前的as7:https://community.jboss.org/wiki/HowDoICreateAResourceRef for as7:https://community.jboss.org/message/629666