2017-12-10 17 views
1

xpathを使用してプロパティのデータタイプを取得するにはどうすればよいですか。私のコードは以下の通りですxpathを使用してプロパティタイプを取得する方法

<filter xmlns:ns="http://org.apache.synapse/xsd" xpath="get-property('poNumber')=INTEGER"> 

また、プロパティが空であるかどうかを確認する必要があります。

<filter xmlns:ns="http://org.apache.synapse/xsd" xpath="get-property('poNumber')=''"> 

以下のコードを参照してください。そして、これは私がURLのparamとしてpoNumberを送信しています私の財産

<property expression="$url:poNumber" name="poNumber" scope="default" 
type="INTEGER" xmlns:ns="http://org.apache.synapse/xsd"/> 

で、プロパティ値が提供されているかどうか確認する必要があります。そうであれば、私はその整数かどうかをチェックしなければならない。

答えて

1

これは単に正規表現で行うことができます。

<filter source="$url:poNumber" regex=".*\S.*"> 
    <then> 
     <log level="custom"> 
      <property name="Value is " value="Not Empty"/> 
     </log> 
     <filter source="$url:poNumber" regex="-?\d+"> 
      <then> 
       <log level="custom"> 
        <property name="Value is " value="Integer"/> 
       </log> 
      </then> 
      <else> 
       <log level="custom"> 
        <property name="Value is " value="Not Integer"/> 
       </log> 
      </else> 
     </filter> 
    </then> 
    <else> 
     <log level="custom"> 
      <property name="Value is " value="Empty"/> 
     </log> 
    </else> 
</filter> 
関連する問題