Frage

I'm looking for a little help to create a plan.xml file which I can use to override a parameter in my 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>

I'd like to generate a plan.xml which replaces the lookup-name ("jdbc/WorkerDS") with ("jdbc/Oracle/WorkerDS").
I have tried creating the following plan.xml but it does not replace the lookup-name attribute (something wrong in the XPath expression??):

 <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>

Thanks a lot Tyler

War es hilfreich?

Lösung

<resource-ref> can be zero to many, so in your case, try to put [res-ref-name="WorkerDS"] in the xpath expression

<xpath>/ejb-jar/enterprise-beans/session/[ejb-name="WorkerEJB"]/resource-ref/[res-ref-name="WorkerDS"]/lookup-name</xpath>
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top