3

許可された値のリストを持つ構成Beanがあります。

@Component
public class Conf {
    public List<String> getAllowedValues() {
        return Arrays.asList("A", "B", "C", "D");
}

メッセージヘッダーに「someValue」というフィールドを入力しました。フィルター要素を使用して、someValueが許可された値のリストにないメッセージを除外したいと思います。

私のコンテキストは次のようになります。

<int:filter expression="#{conf.allowedValues}.contains(headers.get('someValue'))"/>

しかし、私は得ます:SpelParseException: EL1041E:(pos 1): After parsing a valid expression, there is still more data in the expression: 'comma(,)'

4

2 に答える 2

2

答えはここに提供されました:

<int:filter expression="@conf.allowedValues.contains(headers.get('someValue'))"/>
于 2011-07-11T09:04:48.487 に答える
0

これには、より簡単な(おそらく最善ではない)ソリューションがあります。

<int:filter expression="{"A", "B", "C", "D"}.contains(headers.get('someValue'))" />

参照

于 2015-07-21T19:23:06.083 に答える