クラス XPathPayloadEndpointMapping

java.lang.ObjectSE
org.springframework.context.support.ApplicationObjectSupport
実装されたすべてのインターフェース:
org.springframework.beans.factory.Awareorg.springframework.beans.factory.InitializingBeanorg.springframework.context.ApplicationContextAwareorg.springframework.core.OrderedEndpointMapping

public class XPathPayloadEndpointMapping extends AbstractMapBasedEndpointMapping implements org.springframework.beans.factory.InitializingBean
XPath 式を使用してエンドポイントにマップする EndpointMapping インターフェースの実装。Bean インスタンスへのマッピングと Bean 名へのマッピングの両方をサポートします。後者はプロトタイプエンドポイントに必要です。

XPath 式は、expression プロパティを使用して設定できます。このプロパティの設定は必須です。式で使用される名前空間バインディングを設定することを定義するオプションの namespaces プロパティもあります。

endpointMap プロパティは、エンドポイントマップに Bean 参照を設定するのに適しています。例: XML Bean 定義のマップ要素経由。

Bean 名へのマッピングは、次のように、java.util.Properties クラスで受け入れられる形式で mappings プロパティを介して設定できます。

 BookFlight=bookFlightEndpoint
 GetFlights=getFlightsEndpoint
 
構文は XPATH_EVALUATION = ENDPOINT_BEAN_NAME です。重要なのは受信メッセージの XPath 式の評価であり、値はエンドポイントの名前です。
導入:
1.0.0
作成者:
Arjen Poutsma
関連事項:
  • コンストラクターの詳細

    • XPathPayloadEndpointMapping

      public XPathPayloadEndpointMapping()
  • メソッドの詳細

    • setExpression

      public void setExpression(StringSE expression)
      使用する XPath 式を設定します。
    • setNamespaces

      public void setNamespaces(MapSE<StringSE,StringSE> namespaces)
      式で使用される名前空間バインディングを設定します。キーはプレフィックス、値は名前空間です。
    • afterPropertiesSet

      public void afterPropertiesSet() throws ExceptionSE
      次で指定:
      インターフェース org.springframework.beans.factory.InitializingBeanafterPropertiesSet 
      例外:
      ExceptionSE
    • getLookupKeyForMessage

      protected StringSE getLookupKeyForMessage(MessageContext messageContext) throws ExceptionSE
      クラスからコピーされた説明: AbstractMapBasedEndpointMapping
      指定されたメッセージコンテキストのエンドポイントキーを返します。キーが見つからない場合は null を返します。
      次で指定:
      クラス AbstractMapBasedEndpointMappinggetLookupKeyForMessage 
      戻り値:
      登録キー。または null
      例外:
      ExceptionSE
    • validateLookupKey

      protected boolean validateLookupKey(StringSE key)
      クラスからコピーされた説明: AbstractMapBasedEndpointMapping
      指定されたエンドポイントキーを検証します。true を返す必要がありますが、指定された文字列は有効です。
      次で指定:
      クラス AbstractMapBasedEndpointMappingvalidateLookupKey