我有一个遗留的EJB 2应用程序,我将其部署到Websphere 8.5。该应用程序具有依赖关系,这些依赖关系在/META-INF/ejb-jar.xml和/META-INF/ibm-ejb-jar-bnd.xml中定义了到数据源的JNDI绑定。
不允许我更改那些依赖项中的代码,也不能更改Websphere的配置。但是我可以更改jar文件中的配置文件。
我想在我的应用程序中覆盖有效的JNDI绑定。是否可以定义将添加到Ear的文件以覆盖这些绑定?
ejb-jar.xml的片段:
<resource-ref id="ResourceRef_1248968390265">
<res-ref-name>jdbc/CentralDS</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
<res-sharing-scope>Shareable</res-sharing-scope>
</resource-ref>
ibm-ejb-jar-bnd.xml:
<session name="FooJob">
<resource-ref name="jdbc/CentralDS" binding-name="jdbc/VeryCentralDs" />
</session>
是否可以在某个地方覆盖此JNDI名称(VeryCentralDs)?
答案 0 :(得分:0)
是的,可以在部署时覆盖资源引用绑定。 knowledge center article逐步完成了部署应用程序的步骤。注意here中记录的“将资源引用映射到资源”步骤。在此处可以填写要将资源引用绑定到的目标JNDI名称。