【问题标题】:wso2 - using value from a property to retrive sequence namewso2 - 使用属性中的值来检索序列名称
【发布时间】:2015-07-03 20:26:15
【问题描述】:

我正在配置代理服务,我有三个序列:s1,s2,s3

1,2,3 的值存储在本地注册表变量中,它从注册表中获取并存储在名为“myProp”的属性中

现在,根据这个 myProp 的值,我想调用三个序列之一。

我试过了:

               <sequence key="s{concat(get-property('myProp'))}"/>

但不起作用。

这是房源代码:

         <property name="myProp"
               expression="get-property('registry','conf:repository/myVersion2.xml')"
               scope="default"
               type="STRING"/>

这就是我想要做的:

         <filter source="get-property('myProp')"
             regex=".*&gt;1&lt;.*"
             description="filter">
        <then>
           <log level="custom" separator=":">
              <property name="TestVersion" value="LOG_S1_TRUE"/>
              <property name="TestVersion" expression="get-property('myProp')"/>
           </log>
           <sequence key="s{concat(get-property('myProp'))}"/>
        </then>
        <else>
           <log level="custom" separator=":">
              <property name="TestVersion" value="LOG_S1_FALSE"/>
           </log>
        </else>
     </filter>

我从日志中得到这个错误:

TID: [0] [ESB] [2015-07-03 12:47:25,340] ERROR {org.apache.synapse.mediators.base.SequenceMediator} -  Sequence named Value {name ='null', keyValue ='s{concat(get-property('myProp'))}'} cannot be found {org.apache.synapse.mediators.base.SequenceMediator}

提前感谢知道如何解决它的人。

问候 克劳迪奥

【问题讨论】:

    标签: wso2 sequence esb


    【解决方案1】:

    先将键值分配给一个属性来测试它,你会发现它不能工作:) 尝试: &lt;sequence key="{concat('s', get-property('myProp'))}"/&gt;

    【讨论】:

      猜你喜欢
      • 2010-11-23
      • 2016-05-02
      • 2017-07-13
      • 1970-01-01
      • 2012-06-09
      • 1970-01-01
      • 1970-01-01
      • 2012-01-05
      • 2018-09-30
      相关资源
      最近更新 更多