5.6. 메시지#159


5.6.1. 개요

그림 5.8. “메시지#159 패턴” 에 표시된 메시지 번역 패턴은 메시지의 내용을 수정하여 다른 형식으로 변환하는 구성 요소를 설명합니다. Apache Camel의 8080 통합 기능을 사용하여 메시지 변환을 수행할 수 있습니다.

그림 5.8. 메시지#159 패턴

메시지 번역 패턴

5.6.2. Cryostat 통합

metrics 통합을 사용하여 메시지를 변환하여 등록된 모든 Cryostat에서 메서드를 호출할 수 있습니다. 예를 들어, myMethodName() 메서드를 호출하려면 빈에서 ID를 사용하여 myTransformerBean:

from("activemq:SomeQueue")
  .beanRef("myTransformerBean", "myMethodName")
  .to("mqseries:AnotherQueue");

여기서 myTransformerBean VLAN은 Spring XML 파일 또는 JNDI에 정의되어 있습니다. 8080 Ref() 에서 method name 매개변수를 생략하면, 8080 통합은 메시지 교환을 검사하여 메서드 이름을 추론하려고 합니다.

다음과 같이 자체 명시적 Processor 인스턴스를 추가하여 변환을 수행할 수도 있습니다.

from("direct:start").process(new Processor() {
    public void process(Exchange exchange) {
        Message in = exchange.getIn();
        in.setBody(in.getBody(String.class) + " World!");
    }
}).to("mock:result");

또는 DSL을 사용하여 다음과 같이 변환을 명시적으로 구성할 수 있습니다.

from("direct:start").setBody(body().append(" World!")).to("mock:result");

템플릿 작성을 사용하여 대상의 메시지를 사용하여 Velocity 또는 XQuery와 같은 것으로 변환한 다음 다른 대상으로 보낼 수도 있습니다. 예를 들어 InOnly 교환 패턴 (one-way 메시징) 사용 :

from("activemq:My.Queue").
  to("velocity:com/acme/MyResponse.vm").
  to("activemq:Another.Queue");

템플릿이 생성된 응답과 함께 ActiveMQ의 My.Queue 큐에서 요청을 처리하는 데 InOut (request-reply) 의미 체계를 사용하려면 다음과 같은 경로를 사용하여 JMSReplyTo 대상에 응답을 다시 보낼 수 있습니다.

from("activemq:My.Queue").
  to("velocity:com/acme/MyResponse.vm");
Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

© 2024 Red Hat, Inc.