如何使用部署配置计划替换.componentType文件中定义的属性?

时间:2012-02-08 11:48:23

标签: bpel sca oracle-soa

有没有办法在部署配置计划期间替换在BPEL componentType文件中配置的首选项?让我们说吧 (如果我在composite.xml中的<component>中移动这些属性,配置计划工作正常。我正在寻找componentType首选项的解决方案)

我的.componentType文件如下

<componentType ..............>
    <property name="preference.somePreference" type="xs:string">actualValue</property> 
</componentType>

和我的deployment_config_plan.xml如下

<component name="orderProcessor">
<property name="preference.somePreference"><replace>someValue</replace> 
</property> 
</component>

2 个答案:

答案 0 :(得分:0)

示例文件 MQin_mq.jca

<adapter-config name="MQ_QUEUEin" adapter="MQSeriesAdapter" wsdlLocation="MQ_QUEUEin.wsdl" xmlns="http://platform.integration.oracle/blocks/adapter/fw/metadata">

  <connection-factory location="eis/MQ/APP" adapterRef=""/>
  <endpoint-activation portType="Dequeue_ptt" operation="Dequeue" UITransmissionPrimitive="Dequeue">
    <activation-spec className="oracle.tip.adapter.mq.inbound.ActivationSpecImpl">
      <property name="QueueName" value="__MQ_QUEUE__"/>
      <property name="InboundThreadCount" value="1"/>
      <property name="UseMessageEncodingForTranslation" value="false"/>
    </activation-spec>
  </endpoint-activation>
</adapter-config>

ANT build.xml脚本文件将属性占位符替换为值:

<?xml version="1.0" encoding="UTF-8" ?>
<project default="deploy" basedir=".">
    <target name="deploy">      
        <delete dir="temp" />
        <delete dir="temp2" />
        <unzip src="${basedir}/sca_app_rev${deploy.revision}.jar"
               dest="temp" />
        <replaceregexp file="temp/MQin_mq.jca"
                       match="__MQ_QUEUE__"
                       replace="${app.queue.MQ_QUEUE}" />
        <mkdir dir="temp2" />
        <zip destfile="${basedir}/temp2/sca_app_rev${deploy.revision}.jar"
             basedir="temp" />      
        <ant antfile="ant-sca-deploy.xml" dir="${env.BEA_HOME}/jdeveloper/bin">
                <property name="serverURL" value=" http://${weblogic.host}:8001" />
                <property name="sarLocation" value="${basedir}@{dir}/sca_app_rev${deploy.revision}.jar" />
                <property name="overwrite" value="true" />
                <property name="user" value="weblogic" />
                <property name="password" value="${weblogic.password}" />
                <property name="forceDefault" value="true" />
                <property name="failOnError" value="true" />
            </ant>
    </target>
</project>

答案 1 :(得分:0)

无法在配置计划中替换此类内容。您需要在de标签内移动您的偏好

当您在.componentType文件上具有引用时,也会发生同样的事情。您需要将此引用包装在Wrapper.wsdl文件中。之后,您可以在cfgplan.xml文件中更改此Wrapper.wsdl的引用。