2017-12-08 14 views
1

プロパティをWSO2プロキシに設定しようとしています。私は次の構文とxpath表現を使用しています:wso2プロパティメディエータのxpath式が機能しません。

<property expression="//RelationValueList/PersonnelRelationValueUnitType[RelAttrId='R54' and DateTo=max(//RelationValueList/PersonnelRelationValueUnitType[RelAttrId='R54']/DateTo/xs:dateTime(.))][last()]/RelationValue" name="RelValue" scope="default" type="STRING"/> 

このXpath式は、オンラインXpathテスターでうまくいきます。プロパティメディエーターのWSO2表現でそれを使用している場合しかし、それは私に次のEclipseのエラー得られます

<GetPersonnelResponse> 
<GetPersonnelResult> 
    <RelationValueList> 
     <PersonnelRelationValueUnitType> 
      <RelAttrId>C1</RelAttrId> 
      <RelationValue>1234</RelationValue> 
      <DateFrom>1900-01-02T00:00:00</DateFrom> 
      <DateTo>2199-12-31T00:00:00</DateTo> 
     </PersonnelRelationValueUnitType> 
     <PersonnelRelationValueUnitType> 
      <RelAttrId>R54</RelAttrId> 
      <RelationValue>GEN123</RelationValue> 
      <DateFrom>1900-01-02T00:00:00</DateFrom> 
      <DateTo>2017-12-04T00:00:00</DateTo> 
     </PersonnelRelationValueUnitType> 
     <PersonnelRelationValueUnitType> 
      <RelAttrId>R54</RelAttrId> 
      <RelationValue>GEN456</RelationValue> 
      <DateFrom>2017-12-05T00:00:00</DateFrom> 
      <DateTo>2099-12-31T00:00:00</DateTo> 
     </PersonnelRelationValueUnitType> 
    </RelationValueList> 
</GetPersonnelResult> 
</GetPersonnelResponse> 

WSO2不明シナプス構成タグをXML文書は次のようになります

Error message

WSO2esbでXpath 2.0が有効になっています。 最も高いDateTo値を持つRelationValueを選択する必要があります。複数の値がある場合は、最後の値をとります。

これを修正する方法を知っている人はいますか?

+0

完全なエラーログですか? – Bee

+0

これはEclipseからのエラーです。私はちょうど完全なエラーメッセージのスクリーンショットを追加しました。 – Patrick

+0

アイデアはありますか? – Patrick

答えて

0

あなたの式ではnamespace xs:を使用します。メディエータの最上位親タグに定義する必要があります。

+0

xmlns:xs = "http://www.w3.org/2001/XMLSchema"をプロパティメディエーターに追加しましたが、まだ運がありません。同じエラーが発生します。xs:dateTimeから(。)文字を削除すると、Eclipseは保存時にエラーを表示しません。しかし、それを実行しても動作していません。しかし、(。)文字は許可されていないようです。 – Patrick

関連する問題