私のMule 3.3.0設定には、次のような条件式があります。
<when expression="#[places.contains(message.payload)]">
. . .
</when>
placesとして宣言されたローカル変数です。
<set-variable variableName="places" value="{'Buenos Aires', 'Córdoba', 'La Plata'}"/>
上記の条件式を行う前にXSL、ペイロードを設定するトランスフォーマーがあります。ペイロードが空でない場合、条件式は正常に機能しますが、xsl トランスフォーマーが結果を返さず、条件ステートメントの上に#[payload]ある場合でも、 が返されます。emptytrue
どうすればこれを修正できますか?
EDIT
XSLトランスフォーマーは次のように宣言されます。
<xm:xslt-transformer xsl-file="xsl/getPlaces.xslt" returnClass="java.lang.String"/>