10.2. 콘텐츠 필터
10.2.1. 개요 링크 복사링크가 클립보드에 복사되었습니다!
링크 복사링크가 클립보드에 복사되었습니다!
콘텐츠 필터 패턴은 의도한 수신자에 전달하기 전에 메시지에서 불필요한 콘텐츠를 필터링해야 하는 시나리오를 설명합니다. 예를 들어 콘텐츠 필터를 사용하여 메시지에서 기밀 정보를 제거할 수 있습니다.
그림 10.2. 콘텐츠 필터 패턴
메시지를 필터링하는 일반적인 방법은 지원되는 스크립팅 언어(예: XSLT, XQuery 또는 JoSQL) 중 하나로 작성된 DSL에서 표현식을 사용하는 것입니다.
10.2.2. 콘텐츠 필터 구현 링크 복사링크가 클립보드에 복사되었습니다!
링크 복사링크가 클립보드에 복사되었습니다!
콘텐츠 필터는 본질적으로 특정 목적을 위한 메시지 처리 기술을 적용하는 것입니다. 콘텐츠 필터를 구현하려면 다음과 같은 메시지 처리 기술을 사용할 수 있습니다.
- 메시지 번역가 5.6절. “메시지#159” 참조.
- 프로세서는 35장. 프로세서 구현 을 참조하십시오.
- Cryostat 통합.
10.2.3. XML 구성 예 링크 복사링크가 클립보드에 복사되었습니다!
링크 복사링크가 클립보드에 복사되었습니다!
다음 예제에서는 XML로 동일한 경로를 구성하는 방법을 보여줍니다.
<camelContext xmlns="http://camel.apache.org/schema/spring">
<route>
<from uri="activemq:My.Queue"/>
<to uri="xslt:classpath:com/acme/content_filter.xsl"/>
<to uri="activemq:Another.Queue"/>
</route>
</camelContext>
10.2.4. Cryostat 필터 사용 링크 복사링크가 클립보드에 복사되었습니다!
링크 복사링크가 클립보드에 복사되었습니다!
Cryostat를 사용하여 관심 있는 메시지의 일부를 필터링할 수도 있습니다.
<route>
<from uri="activemq:Input"/>
<setBody><xpath resultType="org.w3c.dom.Document">//foo:bar</xpath></setBody>
<to uri="activemq:Output"/>
</route>