拡張メディエーター クラスを作成します。プロパティの値のみを設定できます。しかし、私は XPath 式を使用したいと考えています。どうすればこれを行うことができますか?
次のような設定:
<class name="org.wso2.esb.tutorial.mediators.SurchargeStockQuoteMediator">
<property name="defaultPercentage" value="10"/>
</class>
次のようにプロパティに値を入れると、同じ問題に直面します。
<property name="something" expression="get-property('value_of_something')"/>
ESBは、値は静的または何かでなければならない..
だから私はこの解決策を使用します:
1) value_of_something を任意のプロパティに入れます
<property name="value_of_something" value="some value"/>
2) 次に、メディエーター クラスの mediate() メソッドで、このようなMessageContextオブジェクトからvalue_of_somethingという名前のプロパティを取得します
boolean mediate(MessageContext synCtx) {
String value_of_something = synCtx.getProperty("value_of_something")+"";
}