クラス XPathTransformer

実装されたすべてのインターフェース:
AwareBeanFactoryAwareBeanNameAwareInitializingBeanApplicationContextAwareExpressionCapableGenericTransformer<Message<?>,Message<?>>NamedComponentTransformer

public class XPathTransformer extends AbstractTransformer
受信メッセージペイロードに対して XPath 式を評価し、その評価の結果であるペイロードを持つメッセージを返す Transformer の実装。評価の前に、ペイロードは構成された XmlPayloadConverter インスタンスによって変換される場合があります。デフォルトのコンバーター型は DefaultXmlPayloadConverter です。

評価結果の型は、setEvaluationType(XPathEvaluationType) に提供される列挙値、または優先される NodeMapper の存在のいずれかに依存します。NodeMapper または評価型が明示的に構成されていない場合、デフォルトの評価型は XPathEvaluationType.STRING_RESULT です。

導入:
2.0
作成者:
Mark Fisher
  • コンストラクターの詳細

    • XPathTransformer

      public XPathTransformer(StringSE expression)
      変換された受信メッセージペイロードに対して評価される、指定された文字列から XPath 式を作成する XPathTransformer を作成します。
      パラメーター:
      expression - 表現。
    • XPathTransformer

      public XPathTransformer(XPathExpression expression)
      変換された受信メッセージペイロードに対して指定された XPathExpression を評価する XPathTransformer を作成します。
      パラメーター:
      expression - 表現。
  • メソッドの詳細

    • setEvaluationType

      public void setEvaluationType(XPathEvaluationType evaluationType)
      予想される XPathEvaluationType を指定します。デフォルトは XPathEvaluationType.STRING_RESULT です。
      パラメーター:
      evaluationType - 評価型。
    • setNodeMapper

      public void setNodeMapper(NodeMapper<?> nodeMapper)
      結果オブジェクトの生成に使用する NodeMapper を設定します。デフォルトでは、NodeMapper は null ですが、明示的に設定されている場合、型の決定は NodeMapper の責任であり、構成されている evaluationType よりも優先されます。
      パラメーター:
      nodeMapper - ノードマッパー。
    • setConverter

      public void setConverter(XmlPayloadConverter converter)
      XPath 評価の前にメッセージペイロードを変換するときに使用する XmlPayloadConverter を指定します。
      パラメーター:
      converter - ペイロードコンバーター。
    • getComponentType

      public StringSE getComponentType()
      クラスからコピーされた説明: IntegrationObjectSupport
      サブクラスはこのメソッドを実装して、コンポーネント型情報を提供できます。
      次で指定:
      インターフェース NamedComponentgetComponentType 
      オーバーライド:
      クラス IntegrationObjectSupportgetComponentType 
    • doTransform

      protected ObjectSE doTransform(Message<?> message)
      クラスからコピーされた説明: AbstractTransformer
      サブクラスは、変換ロジックを提供するためにこのメソッドを実装する必要があります。戻り値自体がメッセージの場合、結果として使用されます。そうでない場合、null 以外の戻り値が結果メッセージのペイロードとして使用されます。
      次で指定:
      クラス AbstractTransformerdoTransform 
      パラメーター:
      message - メッセージ。
      戻り値:
      変換の結果。