375장. 시행일 수 있습니다.


Camel 버전 1.1에서 사용 가능

Camel은 DSL 또는 Xml Configuration 에서 Expression 또는 Predicate를 사용할 수 있도록 XPath 를 지원합니다. 예를 들어 XPath를 사용하여 메시지 필터에서 또는 받는 목록에 대한 식으로 표시를 만들 수 있습니다.For example, you could use XPath to create an Predicate in a Message Filter or as an Expression for a Recipient List.

스트림

메시지 본문이 스트림을 기반으로 하면 수신하는 입력이 Camel에 스트림으로 제출됨을 의미합니다. 즉, 스트림의 내용을 한 번 만 읽을 수 있습니다. 따라서 README를 메시지 필터 또는 콘텐츠 기반 라우터로 사용하는 경우 종종 데이터에 여러 번 액세스해야 하며 Stream Caching을 사용하거나 메시지 본문을 여러 번 다시 읽을 수 있는 이전 문자열로 변환해야 합니다. ???

from("queue:foo").
  filter().xpath("//foo")).
  to("queue:bar")
from("queue:foo").
  choice().xpath("//foo")).to("queue:bar").
  otherwise().to("queue:others");

375.1. XPath 언어 옵션

XPath 언어는 아래 나열된 9 가지 옵션을 지원합니다.

이름기본값Java Type설명

documentType

 

문자열

문서 유형의 클래스 이름: 기본값은 org.w3c.dom.Document입니다.

resultType

NODESET

문자열

결과 형식의 클래스 이름을 (출력에서 유형) 기본 결과 유형은 NodeSet입니다.

saxon

false

부울

Saxon 사용 여부

factoryRef

 

문자열

레지스트리에서 조회할 사용자 정의 XPathFactory에 대한 참조

objectModel

 

문자열

사용할 XPath 개체 모델

logNamespaces

false

부울

문제 발생 시 지원할 수 있는 네임스페이스를 로깅할지 여부

headerName

 

문자열

메시지 본문 대신 입력으로 사용할 헤더 이름

threadSafety

false

부울

xpath 식의 반환된 결과에 대해 스레드 보호 기능을 사용할지 여부입니다.Whether to enable thread- protection for the returned result of the xpath expression. 이는 결과 유형으로 NODESET을 사용할 때 적용되며 반환된 세트에 여러 요소가 있습니다. 이러한 상황에서 Camel Splitter EIP의 병렬 처리 모드에서와 같이 NODESET을 동시에 처리하는 경우 스레드 안전 문제가 발생할 수 있습니다. 이 옵션은 노드의 방어 사본을 수행하여 동시성 문제를 방지합니다. 애플리케이션에서 camel-saxon 또는 Saxon을 사용하는 경우 이 옵션을 켜는 것이 좋습니다. Saxon에는 스레드 안전 문제가 있으므로 이 옵션을 켜서 방지할 수 있습니다.

trim

true

부울

선행 공백과 후행 공백과 줄 바꿈을 제거할 값을 조정할지 여부입니다.

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.