Este conteúdo não está disponível no idioma selecionado.

A.2. Common Elements


Overview

When configuring ServiceMix EIP patterns in a ServiceMix configuration file, there are some common elements that occur in many of the pattern schemas. This section provides a brief overview of these common elements and explains how they can be mapped to equivalent constructs in Apache Camel.

Exchange target

All of the patterns supported by ServiceMix EIP use the eip:exchange-target element to specify JBI target endpoints. Table A.1, “Mapping the Exchange Target Element” shows examples of how to map sample eip:exchange-target elements to Apache Camel endpoint URIs, where it is assumed that the test prefix maps to the http://progress.com/demos/test namespace.
Expand
Table A.1. Mapping the Exchange Target Element
ServiceMix EIP TargetApache Camel Endpoint URI
<eip:exchange-target interface="HelloWorld" /> jbi:interface:HelloWorld
<eip:exchange-target service="test:HelloWorldService" /> jbi:service:http://progress.com/demos/test/HelloWorldService
<eip:exchange-target service="test:HelloWorldService" endpoint="secure" /> jbi:service:http://progress.com/demos/test/HelloWorldService/secure
<eip:exchange-target uri="service:test:HelloWorldService" /> jbi:service:http://progress.com/demos/test/HelloWorldService

Predicates

The ServiceMix EIP component allows you to define predicate expressions in the XPath language. For example, XPath predicates can appear in eip:xpath-predicate elements or in eip:xpath-splitter elements, where the XPath predicate is specified using an xpath attribute.
ServiceMix XPath predicates can easily be migrated to equivalent constructs in Apache Camel: that is, either the xpath element (in XML configuration) or the xpath() command (in Java DSL). For example, the message filter pattern in Apache Camel can incorporate an XPath predicate as follows:
<route>
  <from uri="jbi:endpoint:http://progress.com/demos/test/messageFilter/endpoint">
  <filter>
   <xpath>count(/test:world) = 1</xpath>
   <to uri="jbi:service:http://progress.com/demos/test/trace3"/>
  </filter>
</route>
Copy to Clipboard Toggle word wrap
Where the xpath element specifies that only messages containing the test:world element will pass through the filter.
Note
Apache Camel also supports a wide range of other scripting languages including XQuery, PHP, Python, and Ruby, which can be used to define predicates. For details of all the supported predicate languages, see Expression and Predicate Languages.

Namespace contexts

When using XPath predicates in the ServiceMix EIP configuration, it is necessary to define a namespace context using the eip:namespace-context element. The namespace is then referenced using a namespaceContext attribute.
When ServiceMix EIP configuration is migrated to Apache Camel, there is no need to define namespace contexts, because Apache Camel allows you to define XPath predicates without referencing a namespace context. You can simply drop the eip:namespace-context elements when you migrate to Apache Camel.
Voltar ao topo
Red Hat logoGithubredditYoutubeTwitter

Aprender

Experimente, compre e venda

Comunidades

Sobre a documentação da Red Hat

Ajudamos os usuários da Red Hat a inovar e atingir seus objetivos com nossos produtos e serviços com conteúdo em que podem confiar. Explore nossas atualizações recentes.

Tornando o open source mais inclusivo

A Red Hat está comprometida em substituir a linguagem problemática em nosso código, documentação e propriedades da web. Para mais detalhes veja o Blog da Red Hat.

Sobre a Red Hat

Fornecemos soluções robustas que facilitam o trabalho das empresas em plataformas e ambientes, desde o data center principal até a borda da rede.

Theme

© 2025 Red Hat