3

所以,我有一种情况,我将部署多个 ear 文件,每个文件都需要配置不同的数据库(可能)。

现在我有一个部署在 JBoss 中的 *-ds.xml 文件,它有一个 JNDI 名称,我的所有 portlet 和 servlet 都使用它来查找数据库连接。如果我使用指向不同数据库但具有相同 JNDI 名称的 *-ds.xml 文件部署多个 ear 文件,则部署 barfs。在部署不同的应用程序以隔离它们时,JNDI 不应该更加模块化以防止命名冲突。

更改我在代码中的查找需要相当长的时间,那么有没有一种部署方法可行?我唯一的另一个想法是将 JNDI 属性设置为要查找的数据源名称的值,然后首先查找该 JNDI 属性并根据检索到的“键”检索数据源。这对我来说似乎有点骇人听闻......

4

1 回答 1

3

您可以在具有不同名称的应用程序服务器上定义不同的数据源(在服务器名称空间上),然后通过部署 xml 将其映射到资源引用名称(这次是组件名称空间,因此每个应用程序都可以拥有自己的名称空间)文件。

对于 as7 之前的 JBoss:https ://community.jboss.org/wiki/HowDoICreateAResourceRef对于 as7:https ://community.jboss.org/message/629666

于 2012-08-07T21:36:39.230 回答