WebSphere Liberty 中具有相同 JNDI 的多个数据源

Multiple Datasources with same JNDI in WebSphere Liberty

Liberty 中是否可以有多个具有相同 JNDI 名称的数据源。我尝试做同样的事情,但出现了这些错误:

[错误] CWWKG0031E: 为唯一属性 jndiName.unique 指定的值 jdbc/konyreports 已在使用中。 [错误] CWWKG0074E: 无法更新具有唯一标识 REPORTSDB_JNDI 的数据源的配置,因为异常:属性 jndiName.unique 的值 jdbc/konyreports 不是唯一的。 [警告] CWWKG0076W:id 为 REPORTSDB_JNDI 的数据源的先前配置仍在使用中。

这是我的配置:

<dataSource id="ACCOUNTSDB_JNDI" jndiName="jdbc/konyaccounts">
  <jdbcDriver libraryRef="DabaseConnector" />
  <properties.microsoft.sqlserver databaseName="liberty1" serverName="mydb.konylabs.net" portNumber="1433" user="myUser" password="myPass" />
</dataSource>

<dataSource id="KONY_ACCOUNTS_LOGGER_JNDI" jndiName="jdbc/konyaccounts">
  <jdbcDriver libraryRef="DabaseConnector" />
  <properties.microsoft.sqlserver databaseName="liberty1" serverName="mydb.konylabs.net" portNumber="1433" user="myUser" password="myPass" />
</dataSource>

不,不可能有多个具有相同 JNDI 名称的数据源。

无论如何,如果拥有多个具有相同凭据的数据源,您会尝试实现什么目的?您可以简单地消除重复的配置,并且只使用一组数据源配置应该具有相同的行为。