【问题标题】:How to override ejb-jar.xml settings with plan.xml?如何使用 plan.xml 覆盖 ejb-jar.xml 设置?
【发布时间】:2013-07-03 09:22:33
【问题描述】:

我正在寻找一些帮助来创建一个 plan.xml 文件,我可以用它来覆盖我的 ejb-jar.xml 中的一个参数:

 <enterprise-beans>

  <session>

     <ejb-name>WorkerEJB</ejb-name>

     <resource-ref>

        <res-ref-name>WorkerDS</res-ref-name>

        <lookup-name>jdbc/WorkerDS</lookup-name>

     </resource-ref>  

  </session>

我想生成一个 plan.xml,它将 lookup-name ("jdbc/WorkerDS") 替换为 ("jdbc/Oracle/WorkerDS")。
我已尝试创建以下 plan.xml,但它不会替换 lookup-name 属性(XPath 表达式中有问题??):

 <variable-definition>
  <variable>
      <name>ExampleDS</name>
      <value>jdbc/Oracle/WorkerDS</value>
  </variable>
 </variable-definition>
  <module-override>
    <module-name>WorkerEJB</module-name>
    <module-type>jar</module-type>

  <module-descriptor external="false">
    <root-element>ejb-jar</root-element>
    <uri>META-INF/ejb-jar.xml</uri>
    <variable-assignment>
       <name>ExampleDS</name>
       <xpath>/ejb-jar/enterprise-beans/session/[ejb-name="WorkerEJB"]/resource-ref/lookup-name</xpath>
       <operation>replace</operation>
    </variable-assignment>
  </module-descriptor>

</module-override>

非常感谢 泰勒

【问题讨论】:

标签: weblogic weblogic11g weblogic12c


【解决方案1】:

&lt;resource-ref&gt; 可以是零到多个,因此在您的情况下,请尝试将 [res-ref-name="WorkerDS"] 放在 xpath 表达式中

<xpath>/ejb-jar/enterprise-beans/session/[ejb-name="WorkerEJB"]/resource-ref/[res-ref-name="WorkerDS"]/lookup-name</xpath>

【讨论】:

    猜你喜欢
    • 2014-01-28
    • 1970-01-01
    • 1970-01-01
    • 2015-10-12
    • 1970-01-01
    • 2013-11-02
    • 2020-12-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多