Element Summary

ElementDescriptionClass
async-bridgeThe async bridge pattern is used to bridge an In-Out exchange with two In-Only (or Robust-In-Only) exchanges. This pattern is the opposite of the {@link Pipeline}.
The AsyncBridge uses a correlation identifier to be able to correlate the received In-Out exchange, the In-Only sent as the request and the In-Only received as the response. Defaults values are provided to configure those correlation ids. The default behavior is to use the exchange id of the incoming In-Out exchange as the correlation id and set it on the request exchange. The same property with the same value should be present on the response exchange in order for the AsyncBridge to work. ServiceMix components usually take care of propagating such properties, but failing to propagate it will result in errors.
org.apache.servicemix.eip.patterns.AsyncBridge
componentAn EIP componentorg.apache.servicemix.eip.EIPComponent
content-based-routerContentBasedRouter can be used for all kind of content-based routing. This component implements the Content-Based Router pattern.org.apache.servicemix.eip.patterns.ContentBasedRouter
content-enricherImplementation of the Content-Enricher Pattern.org.apache.servicemix.eip.patterns.ContentEnricher
default-comparatorCompares {@link MessageExchange} sequence elements based on sequence numbers defined by their in-{@link javax.jbi.messaging.NormalizedMessage}s. This comparator works on sequence numbers of type {@link Long}. Sequence numbers must be stored as {@link javax.jbi.messaging.NormalizedMessage} properties. The property name under which the sequence number is stored is configured via this comparator's sequenceNumberKey property.org.apache.servicemix.eip.support.resequence.DefaultComparator
exchange-targetAn ExchangeTarget may be used to specify the target of an exchange, while retaining all the JBI features (interface based routing, service name based routing or endpoint routing).org.apache.servicemix.eip.support.ExchangeTarget
message-filterMessageFilter allows filtering incoming JBI exchanges. This component implements the Message Filter pattern.org.apache.servicemix.eip.patterns.MessageFilter
namespace-contextA simple namespace context.org.apache.servicemix.eip.support.NamespaceContextImpl
pipelineThe Pipeline component is a bridge between an In-Only (or Robust-In-Only) MEP and an In-Out MEP. When the Pipeline receives an In-Only MEP, it will send the input in an In-Out MEP to the tranformer destination and forward the response in an In-Only MEP to the target destination. In addition, this component is fully asynchronous and uses an exchange store to provide full HA and recovery for clustered / persistent flows.org.apache.servicemix.eip.patterns.Pipeline
recipient-list-aggregatorAn aggregator specifically written to aggregate messages that have been sent using a StaticRecipientList pattern.org.apache.servicemix.eip.patterns.RecipientListAggregator
resequencerThis pattern implements the Resequencer EIP pattern. The aim of this pattern is to put back into correct order a flow of out-of-sequence messages.org.apache.servicemix.eip.patterns.Resequencer
routing-ruleThe RoutingRule interface is used by content based routers. If the rule predicate matches the MessageExchange, the target defined on the rule will be used as the destination for the given MessageExchange.org.apache.servicemix.eip.support.RoutingRule
split-aggregatorAggregator can be used to wait and combine several messages. This component implements the Aggregator pattern. This aggregator collect messages with a count, index and correlationId properties. These properties are automatically set by splitters. A timeout may be specified so that the aggregator will not keep data forever if a message is missing.org.apache.servicemix.eip.patterns.SplitAggregator
static-recipient-listThe StaticRecipientList component will forward an input In-Only or Robust-In-Only exchange to a list of known recipients. This component implements the Recipient List pattern, with the limitation that the recipient list is static.org.apache.servicemix.eip.patterns.StaticRecipientList
static-routing-slipA RoutingSlip component can be used to route an incoming In-Out exchange through a series of target services. This endpoint implements the Routing Slip pattern, with the limitation that the routing table is static. This endpoint only uses In-Out MEPs and errors or faults sent by targets are reported back to the consumer, thus interrupting the routing process. In addition, this endpoint is fully asynchronous and uses an exchange store to provide full HA and recovery for clustered / persistent flows.org.apache.servicemix.eip.patterns.StaticRoutingSlip
switch-predicateSwitch (on/off) predicate based on a property that can come from a system property, a property from a property file (specified as Spring resource), or a property from the exchange.

The property is interpreted as a boolean value.

org.apache.servicemix.eip.support.SwitchPredicate
wire-tapA WireTap component can be used to forward a copy of the input message to a listener. This component implements the WireTap pattern. It can handle all 4 standard MEPs, but will only send an In-Only MEP to the listener. In addition, this component is fully asynchronous and uses an exchange store to provide full HA and recovery for clustered / persistent flows.org.apache.servicemix.eip.patterns.WireTap
xpath-predicateA predicate that verify if the xpath expression evaluated on the content of the input message is true or not.org.apache.servicemix.eip.support.XPathPredicate
xpath-splitterThe XPathSplitter component implements the Splitter pattern using an xpath expression to split the incoming xml.org.apache.servicemix.eip.patterns.XPathSplitter

Element Detail

Element: async-bridge

AttributeTypeDescription
endpointxs:stringThe name of the endpoint.
interfaceNamexs:QNameThe qualified name of the interface exposed by the endpoint.
requestCorrIdxs:stringThe expression used to compute the correlation id used to correlate the response and the request. The default behavior is to use the exchange id of the incoming In-Out exchange as the correlation id.
responseCorrIdxs:stringThe expression used to compute the correlation id from the response exchange. The value computed by this expression must match the one from the {@link #setRequestCorrId} expression. The default value is null, but if no specific expression is configured, an expression will be created which will extract the response correlation id from the {@link #setResponseCorrIdProperty(String)} property on the exchange.
responseCorrIdPropertyxs:stringName of the property used by default to compute the correlation id on the response exchange.
servicexs:QNameThe qualified name of the service the endpoint exposes.
timeoutxs:longThe timeout property controls the amount of time that the async bridge will wait for the response after having sent the request. The default value is 0 which means that no timeout apply. If set to a non zero value, a timer will be started when after the request is sent. When the timer expires, the In-Out exchange will be sent back with an error status and a {@link java.util.concurrent.TimeoutException} as the cause of the error. The value represents the number of milliseconds to wait.
useRobustInOnlyxs:booleanBoolean flag to control if In-Only or Robust-In-Only exchange should be used when sending the request. The default value is false which means that an In-Only exchange will be used. When using a Robust-In-Only exchange and when a fault is received, this fault will be sent back to the consumer on the In-Out exchange and the response exchange (if any) would be discarded. For both In-Only and Robust-In-Only, if the request exchange comes back with an Error status, this error will be conveyed back to the consumer in the same way.
wsdlResourcexs:stringWhen specified, this spring resource will be used to load the WSDL that will be exposed as a description for this endpoint. This property can be used to explicitely define the WSDL to be exposed by this endpoint. This property takes precedence over the wsdlExchangeTarget property.
ElementTypeDescription
lockManager<spring:bean/>The lock manager to use for this endpoint. If none is explicitely specified a default implementation will be provided.
store<spring:bean/>Configure the store to use. If none is explicitely configured, the storeFactory will be used to create one.
storeFactory<spring:bean/>The store factory to use when creating a store. If no factory is explicitely defined, an in-memory only factory will be created.
targetexchange-targetThe target which will be used to send an In-Only or Robust-In-Only exchange to. When receiving an In-Out exchange, the async bridge will create an In-Only request and send it to the specified target. It then expects another In-Only exchange to come back as the response, which will be set as the Out message on the In-Out exchange. This property is mandatory and must be set to a valid target.
timerManager<spring:bean/>The timer manager to use for this endpoint. If none is explicitely configured, a default implementation will be provided.
wsdlExchangeTargetexchange-targetAn exchange target pointing to a JBI endpoint that will be used to load the WSDL describing this endpoint. This can be used when the endpoint proxies another endpoint so that the same WSDL definition will be exposed."

Element: component

ElementTypeDescription
endpoints(async-bridge | content-based-router | content-enricher | message-filter | pipeline | recipient-list-aggregator | resequencer | split-aggregator | static-recipient-list | static-routing-slip | wire-tap | xpath-splitter)*A list of endpoints to activate on this component.
executorFactory<spring:bean/>The executor factory to use to create the executor. If none is provided, one will be retrieved from the JBI container when the component is deployed into ServiceMix 3.x, or a default implementation will be used.

Element: content-based-router

AttributeTypeDescription
endpointxs:stringThe name of the endpoint.
forwardOperationxs:booleanForward the operation qname when sending the exchange to the target.
interfaceNamexs:QNameThe qualified name of the interface exposed by the endpoint.
servicexs:QNameThe qualified name of the service the endpoint exposes.
wsdlResourcexs:stringWhen specified, this spring resource will be used to load the WSDL that will be exposed as a description for this endpoint. This property can be used to explicitely define the WSDL to be exposed by this endpoint. This property takes precedence over the wsdlExchangeTarget property.
ElementTypeDescription
lockManager<spring:bean/>The lock manager to use for this endpoint. If none is explicitely specified a default implementation will be provided.
rules(routing-rule)*The list of routing rules.
store<spring:bean/>Configure the store to use. If none is explicitely configured, the storeFactory will be used to create one.
storeFactory<spring:bean/>The store factory to use when creating a store. If no factory is explicitely defined, an in-memory only factory will be created.
timerManager<spring:bean/>The timer manager to use for this endpoint. If none is explicitely configured, a default implementation will be provided.
wsdlExchangeTargetexchange-targetAn exchange target pointing to a JBI endpoint that will be used to load the WSDL describing this endpoint. This can be used when the endpoint proxies another endpoint so that the same WSDL definition will be exposed."

Element: content-enricher

AttributeTypeDescription
copyAttachmentsxs:booleanIf this is set to true, message attachments from the incoming exchange and the enricher exchange will be copied to the outgoing message exchange. The default value is false (do not copy message atachments).
copyPropertiesxs:booleanIf this is set to true, message properties from the incoming exchange and the enricher exchange will be copied to the outgoing message exchange. The default value is false (do not copy message properties).
endpointxs:stringThe name of the endpoint.
enricherElementNamexs:QNamereturns the QName of the resulting root node
interfaceNamexs:QNameThe qualified name of the interface exposed by the endpoint.
requestElementNamexs:QNameReturns the QName of the element which contains the 'IN Message' within the response message
resultElementNamexs:QNameReturns the QName of the element which contains the message which was produced by the enricherTarget within the response message
servicexs:QNameThe qualified name of the service the endpoint exposes.
wsdlResourcexs:stringWhen specified, this spring resource will be used to load the WSDL that will be exposed as a description for this endpoint. This property can be used to explicitely define the WSDL to be exposed by this endpoint. This property takes precedence over the wsdlExchangeTarget property.
ElementTypeDescription
enricherTargetexchange-targetThe target that will receive a copy of the input message and return an addtitional content.
lockManager<spring:bean/>The lock manager to use for this endpoint. If none is explicitely specified a default implementation will be provided.
store<spring:bean/>Configure the store to use. If none is explicitely configured, the storeFactory will be used to create one.
storeFactory<spring:bean/>The store factory to use when creating a store. If no factory is explicitely defined, an in-memory only factory will be created.
targetexchange-targetThe target where the enriched exchanges are sent.
timerManager<spring:bean/>The timer manager to use for this endpoint. If none is explicitely configured, a default implementation will be provided.
wsdlExchangeTargetexchange-targetAn exchange target pointing to a JBI endpoint that will be used to load the WSDL describing this endpoint. This can be used when the endpoint proxies another endpoint so that the same WSDL definition will be exposed."

Element: default-comparator

AttributeTypeDescription
sequenceNumberKeyxs:stringThe property name on the input message containing the sequence number

Element: exchange-target

AttributeTypeDescription
endpointxs:stringThe endpoint name of the target.
interfacexs:QNameThe interface QName implemented by the target
operationxs:QNameThe operation QName that will be set on the exchange
servicexs:QNameThe service QName of the target
urixs:stringAn URI identifying the target

Element: message-filter

AttributeTypeDescription
endpointxs:stringThe name of the endpoint.
interfaceNamexs:QNameThe qualified name of the interface exposed by the endpoint.
reportErrorsxs:booleanIndicates if faults and errors from recipients should be sent back to the consumer. In such a case, only the first fault or error received will be reported. Note that if the consumer is synchronous, it will be blocked until all recipients successfully acked the exchange, or a fault or error is reported, and the exchange will be kept in the store for recovery.
servicexs:QNameThe qualified name of the service the endpoint exposes.
wsdlResourcexs:stringWhen specified, this spring resource will be used to load the WSDL that will be exposed as a description for this endpoint. This property can be used to explicitely define the WSDL to be exposed by this endpoint. This property takes precedence over the wsdlExchangeTarget property.
ElementTypeDescription
filterswitch-predicate | xpath-predicateThe filter to use on incoming messages
lockManager<spring:bean/>The lock manager to use for this endpoint. If none is explicitely specified a default implementation will be provided.
store<spring:bean/>Configure the store to use. If none is explicitely configured, the storeFactory will be used to create one.
storeFactory<spring:bean/>The store factory to use when creating a store. If no factory is explicitely defined, an in-memory only factory will be created.
targetexchange-targetThe main target destination which will receive the exchange
timerManager<spring:bean/>The timer manager to use for this endpoint. If none is explicitely configured, a default implementation will be provided.
wsdlExchangeTargetexchange-targetAn exchange target pointing to a JBI endpoint that will be used to load the WSDL describing this endpoint. This can be used when the endpoint proxies another endpoint so that the same WSDL definition will be exposed."

Element: namespace-context

ElementTypeDescription
namespaces<spring:bean/>Keep the getter/setter to keep xbean annotation

Element: pipeline

AttributeTypeDescription
copyAttachmentsxs:booleanShould message attachments be copied ?
copyPropertiesxs:booleanShould message properties be copied ?
endpointxs:stringThe name of the endpoint.
interfaceNamexs:QNameThe qualified name of the interface exposed by the endpoint.
sendFaultsToTargetxs:booleanWhen the faultsTarget is not specified, faults may be sent to the target endpoint if this flag is set to true
servicexs:QNameThe qualified name of the service the endpoint exposes.
wsdlResourcexs:stringWhen specified, this spring resource will be used to load the WSDL that will be exposed as a description for this endpoint. This property can be used to explicitely define the WSDL to be exposed by this endpoint. This property takes precedence over the wsdlExchangeTarget property.
ElementTypeDescription
faultsTargetexchange-targetThe address of the endpoint to send faults to
lockManager<spring:bean/>The lock manager to use for this endpoint. If none is explicitely specified a default implementation will be provided.
store<spring:bean/>Configure the store to use. If none is explicitely configured, the storeFactory will be used to create one.
storeFactory<spring:bean/>The store factory to use when creating a store. If no factory is explicitely defined, an in-memory only factory will be created.
targetexchange-targetThe address of the target endpoint
timerManager<spring:bean/>The timer manager to use for this endpoint. If none is explicitely configured, a default implementation will be provided.
transformerexchange-targetThe adress of the in-out endpoint acting as a transformer
wsdlExchangeTargetexchange-targetAn exchange target pointing to a JBI endpoint that will be used to load the WSDL describing this endpoint. This can be used when the endpoint proxies another endpoint so that the same WSDL definition will be exposed."

Element: recipient-list-aggregator

AttributeTypeDescription
aggregateElementNamexs:QNameThe qualified name that will be used as the root xml element when building the aggregate. Messages contents will be appended to this root element as direct children or inside an element dependending on the messageElementName property.
copyAttachmentsxs:booleanCopy all attachments from the incoming messages to the aggregated message. Default value is true.
copyPropertiesxs:booleanCopy all properties from the incoming messages to the aggregated message. Default value is true.
corrIdxs:stringAn expression used to compute the correlation ids of incoming messages to find related messages. The default value is to retrieve the same property as the splitter.
countxs:stringAn expression used to compute the total number of message that the aggregate will contain. The default value is to retrieve the same property as the splitter. This property is evaluated on each incoming message and must always have the same value for all messages in the same aggregate.
countAttributexs:stringThe name of the xml attribute attached to the root element that will contain the number of messages in this aggregate.
endpointxs:stringThe name of the endpoint.
indexxs:stringAn expression used to compute the index of this message in the aggregate. For a given message, the index must be unique within the aggregate and must range between 0 and count - 1 included.
indexAttributexs:stringThe name of the xml attribute attached to the message element that will contain the index of messages in this aggregate.
interfaceNamexs:QNameThe qualified name of the interface exposed by the endpoint.
messageElementNamexs:QNameThe qualified name of the xml element used to embed each message when building the aggregated message. If null, messages contents will be appended directly as children of the root element.
reportClosedAggregatesAsErrorsxs:booleanSets whether the aggregator should report errors on incoming exchanges received after a given aggregate has been closed. The default value is false, meaning that such exchanges will be silently sent back with a DONE status and discarded with respect to the aggregation process.
reportErrorsxs:booleanSets whether the aggregator should report errors happening when sending the aggregate on all exchanges that compose the aggregate. The default value is false, meaning that if any error occur, this error will be lost. Note that if this flag is set to true, all exchanges received as part of a given aggregate will be hold until the aggregate is sent and the DONE / ERROR status is received back.
reportTimeoutAsErrorsxs:booleanSets whether the aggregator should reports errors on incoming exchanges already received when a timeout occurs. The default value is false, meaning that such exchanges will be silently sent back a DONE status.
rescheduleTimeoutsxs:booleanBoolean flag controlling if aggregate timeouts are rescheduled each time a new message is added to the aggregate. If false, the timeout will expire when the specified amount of time elapsed after the first message is received for this aggregate. If true, the timeout will expire when the specified amount of time elapsed after the last message is received. The default value is false.
servicexs:QNameThe qualified name of the service the endpoint exposes.
synchronousxs:booleanBoolean flag that Controls whether the aggregate (when ready) will be sent synchronously or not. On ServiceMix 3.x, this can have an effect upon the flow and transaction semantics. The default value is false.
timeoutxs:longThe maximum amount of time (in milliseconds) that can elapse between messages for a single aggregate. The default value is 0 which means that the timeout is not used at all.
wsdlResourcexs:stringWhen specified, this spring resource will be used to load the WSDL that will be exposed as a description for this endpoint. This property can be used to explicitely define the WSDL to be exposed by this endpoint. This property takes precedence over the wsdlExchangeTarget property.
ElementTypeDescription
closedAggregatesStoreFactory<spring:bean/>Access the currently configured {@link StoreFactory} for storing closed aggregations
lockManager<spring:bean/>The lock manager to use for this endpoint. If none is explicitely specified a default implementation will be provided.
store<spring:bean/>Configure the store to use. If none is explicitely configured, the storeFactory will be used to create one.
storeFactory<spring:bean/>The store factory to use when creating a store. If no factory is explicitely defined, an in-memory only factory will be created.
targetexchange-targetThe exchange target that will be used to send the aggregate to.
timerManager<spring:bean/>The timer manager to use for this endpoint. If none is explicitely configured, a default implementation will be provided.
wsdlExchangeTargetexchange-targetAn exchange target pointing to a JBI endpoint that will be used to load the WSDL describing this endpoint. This can be used when the endpoint proxies another endpoint so that the same WSDL definition will be exposed."

Element: resequencer

AttributeTypeDescription
capacityxs:integerThe capacity of this resequencer. The capacity determines the maximum number of message that will be kept in memory to put the messages back in sequence. This determine how far two messages can be in the list of messages while still being put back in sequence.
endpointxs:stringThe name of the endpoint.
interfaceNamexs:QNameThe qualified name of the interface exposed by the endpoint.
servicexs:QNameThe qualified name of the service the endpoint exposes.
timeoutxs:longSet the timeout of this resequencer. This specifies the maximum number of milliseconds that can elapse between two out-of-sync messages.
wsdlResourcexs:stringWhen specified, this spring resource will be used to load the WSDL that will be exposed as a description for this endpoint. This property can be used to explicitely define the WSDL to be exposed by this endpoint. This property takes precedence over the wsdlExchangeTarget property.
ElementTypeDescription
comparatordefault-comparatorThe comparator used to determine the sequence order of elements.
lockManager<spring:bean/>The lock manager to use for this endpoint. If none is explicitely specified a default implementation will be provided.
store<spring:bean/>Configure the store to use. If none is explicitely configured, the storeFactory will be used to create one.
storeFactory<spring:bean/>The store factory to use when creating a store. If no factory is explicitely defined, an in-memory only factory will be created.
targetexchange-target
timerManager<spring:bean/>The timer manager to use for this endpoint. If none is explicitely configured, a default implementation will be provided.
wsdlExchangeTargetexchange-targetAn exchange target pointing to a JBI endpoint that will be used to load the WSDL describing this endpoint. This can be used when the endpoint proxies another endpoint so that the same WSDL definition will be exposed."

Element: routing-rule

ElementTypeDescription
predicateswitch-predicate | xpath-predicateThe predicate associated to this routing rule.
targetexchange-targetThe target to send the routed exchange to if the predicate matches.

Element: split-aggregator

AttributeTypeDescription
aggregateElementNamexs:QNameThe qualified name that will be used as the root xml element when building the aggregate. Messages contents will be appended to this root element as direct children or inside an element dependending on the messageElementName property.
copyAttachmentsxs:booleanCopy all attachments from the incoming messages to the aggregated message. Default value is true.
copyPropertiesxs:booleanCopy all properties from the incoming messages to the aggregated message. Default value is true.
corrIdxs:stringAn expression used to compute the correlation ids of incoming messages to find related messages. The default value is to retrieve the same property as the splitter.
countxs:stringAn expression used to compute the total number of message that the aggregate will contain. The default value is to retrieve the same property as the splitter. This property is evaluated on each incoming message and must always have the same value for all messages in the same aggregate.
countAttributexs:stringThe name of the xml attribute attached to the root element that will contain the number of messages in this aggregate.
endpointxs:stringThe name of the endpoint.
indexxs:stringAn expression used to compute the index of this message in the aggregate. For a given message, the index must be unique within the aggregate and must range between 0 and count - 1 included.
indexAttributexs:stringThe name of the xml attribute attached to the message element that will contain the index of messages in this aggregate.
interfaceNamexs:QNameThe qualified name of the interface exposed by the endpoint.
messageElementNamexs:QNameThe qualified name of the xml element used to embed each message when building the aggregated message. If null, messages contents will be appended directly as children of the root element.
reportClosedAggregatesAsErrorsxs:booleanSets whether the aggregator should report errors on incoming exchanges received after a given aggregate has been closed. The default value is false, meaning that such exchanges will be silently sent back with a DONE status and discarded with respect to the aggregation process.
reportErrorsxs:booleanSets whether the aggregator should report errors happening when sending the aggregate on all exchanges that compose the aggregate. The default value is false, meaning that if any error occur, this error will be lost. Note that if this flag is set to true, all exchanges received as part of a given aggregate will be hold until the aggregate is sent and the DONE / ERROR status is received back.
reportTimeoutAsErrorsxs:booleanSets whether the aggregator should reports errors on incoming exchanges already received when a timeout occurs. The default value is false, meaning that such exchanges will be silently sent back a DONE status.
rescheduleTimeoutsxs:booleanBoolean flag controlling if aggregate timeouts are rescheduled each time a new message is added to the aggregate. If false, the timeout will expire when the specified amount of time elapsed after the first message is received for this aggregate. If true, the timeout will expire when the specified amount of time elapsed after the last message is received. The default value is false.
servicexs:QNameThe qualified name of the service the endpoint exposes.
synchronousxs:booleanBoolean flag that Controls whether the aggregate (when ready) will be sent synchronously or not. On ServiceMix 3.x, this can have an effect upon the flow and transaction semantics. The default value is false.
timeoutxs:longThe maximum amount of time (in milliseconds) that can elapse between messages for a single aggregate. The default value is 0 which means that the timeout is not used at all.
wsdlResourcexs:stringWhen specified, this spring resource will be used to load the WSDL that will be exposed as a description for this endpoint. This property can be used to explicitely define the WSDL to be exposed by this endpoint. This property takes precedence over the wsdlExchangeTarget property.
ElementTypeDescription
closedAggregatesStoreFactory<spring:bean/>Access the currently configured {@link StoreFactory} for storing closed aggregations
lockManager<spring:bean/>The lock manager to use for this endpoint. If none is explicitely specified a default implementation will be provided.
store<spring:bean/>Configure the store to use. If none is explicitely configured, the storeFactory will be used to create one.
storeFactory<spring:bean/>The store factory to use when creating a store. If no factory is explicitely defined, an in-memory only factory will be created.
targetexchange-targetThe exchange target that will be used to send the aggregate to.
timerManager<spring:bean/>The timer manager to use for this endpoint. If none is explicitely configured, a default implementation will be provided.
wsdlExchangeTargetexchange-targetAn exchange target pointing to a JBI endpoint that will be used to load the WSDL describing this endpoint. This can be used when the endpoint proxies another endpoint so that the same WSDL definition will be exposed."

Element: static-recipient-list

AttributeTypeDescription
endpointxs:stringThe name of the endpoint.
interfaceNamexs:QNameThe qualified name of the interface exposed by the endpoint.
reportErrorsxs:booleanIndicates if faults and errors from recipients should be sent back to the consumer. In such a case, only the first fault or error received will be reported. Note that if the consumer is synchronous, it will be blocked until all recipients successfully acked the exchange, or a fault or error is reported, and the exchange will be kept in the store for recovery.
servicexs:QNameThe qualified name of the service the endpoint exposes.
wsdlResourcexs:stringWhen specified, this spring resource will be used to load the WSDL that will be exposed as a description for this endpoint. This property can be used to explicitely define the WSDL to be exposed by this endpoint. This property takes precedence over the wsdlExchangeTarget property.
ElementTypeDescription
lockManager<spring:bean/>The lock manager to use for this endpoint. If none is explicitely specified a default implementation will be provided.
recipients(exchange-target)*A list of recipients that will each receive a copy of the input message.
store<spring:bean/>Configure the store to use. If none is explicitely configured, the storeFactory will be used to create one.
storeFactory<spring:bean/>The store factory to use when creating a store. If no factory is explicitely defined, an in-memory only factory will be created.
timerManager<spring:bean/>The timer manager to use for this endpoint. If none is explicitely configured, a default implementation will be provided.
wsdlExchangeTargetexchange-targetAn exchange target pointing to a JBI endpoint that will be used to load the WSDL describing this endpoint. This can be used when the endpoint proxies another endpoint so that the same WSDL definition will be exposed."

Element: static-routing-slip

AttributeTypeDescription
endpointxs:stringThe name of the endpoint.
interfaceNamexs:QNameThe qualified name of the interface exposed by the endpoint.
servicexs:QNameThe qualified name of the service the endpoint exposes.
wsdlResourcexs:stringWhen specified, this spring resource will be used to load the WSDL that will be exposed as a description for this endpoint. This property can be used to explicitely define the WSDL to be exposed by this endpoint. This property takes precedence over the wsdlExchangeTarget property.
ElementTypeDescription
lockManager<spring:bean/>The lock manager to use for this endpoint. If none is explicitely specified a default implementation will be provided.
store<spring:bean/>Configure the store to use. If none is explicitely configured, the storeFactory will be used to create one.
storeFactory<spring:bean/>The store factory to use when creating a store. If no factory is explicitely defined, an in-memory only factory will be created.
targets(exchange-target)*List of target endpoints used in the RoutingSlip
timerManager<spring:bean/>The timer manager to use for this endpoint. If none is explicitely configured, a default implementation will be provided.
wsdlExchangeTargetexchange-targetAn exchange target pointing to a JBI endpoint that will be used to load the WSDL describing this endpoint. This can be used when the endpoint proxies another endpoint so that the same WSDL definition will be exposed."

Element: switch-predicate

AttributeTypeDescription
fromExchangexs:booleanBoolean flag indicating that the value is retrieved from the exchange properties.
onxs:booleanDefault value of this predicate
propertyNamexs:stringThe name of the property to retrieve
propertyResourcexs:stringA spring resource to load a set of properties from.

Element: wire-tap

AttributeTypeDescription
copyPropertiesxs:booleanIf copyProperties is true, properties on the in message will be copied to the out / fault message before it is sent.
endpointxs:stringThe name of the endpoint.
interfaceNamexs:QNameThe qualified name of the interface exposed by the endpoint.
servicexs:QNameThe qualified name of the service the endpoint exposes.
wsdlResourcexs:stringWhen specified, this spring resource will be used to load the WSDL that will be exposed as a description for this endpoint. This property can be used to explicitely define the WSDL to be exposed by this endpoint. This property takes precedence over the wsdlExchangeTarget property.
ElementTypeDescription
faultListenerexchange-targetThe listener destination for fault messages
inListenerexchange-targetThe listener destination for in messages
lockManager<spring:bean/>The lock manager to use for this endpoint. If none is explicitely specified a default implementation will be provided.
outListenerexchange-targetThe listener destination for out messages
store<spring:bean/>Configure the store to use. If none is explicitely configured, the storeFactory will be used to create one.
storeFactory<spring:bean/>The store factory to use when creating a store. If no factory is explicitely defined, an in-memory only factory will be created.
targetexchange-targetThe main target destination which will receive the exchange
timerManager<spring:bean/>The timer manager to use for this endpoint. If none is explicitely configured, a default implementation will be provided.
wsdlExchangeTargetexchange-targetAn exchange target pointing to a JBI endpoint that will be used to load the WSDL describing this endpoint. This can be used when the endpoint proxies another endpoint so that the same WSDL definition will be exposed."

Element: xpath-predicate

AttributeTypeDescription
XPathxs:stringThe xpath expression used to evaluate the predicate.
useMessageContentxs:booleanEnsure re-readability of the content if the expression also needs to access the content.
xpathxs:string
ElementTypeDescription
factory<spring:bean/>The XPath factory. If no factory is explicitely configured, a defaut one will be created using XPathFactory.newInstance().
functionResolver<spring:bean/>The function resolver.
namespaceContextnamespace-contextThe namespace context to use when evaluating the xpath expression
transformer<spring:bean/>
variableResolver<spring:bean/>The variable resolver. The default one will enable the use of properties on the message, exchange, as well as making system properties and environment properties available.

Element: xpath-splitter

AttributeTypeDescription
endpointxs:stringThe name of the endpoint.
forwardAttachmentsxs:booleanIndicates if incoming attachments should be forwarded with the new exchanges.
forwardPropertiesxs:booleanIndicates if properties on the incoming message should be forwarded.
interfaceNamexs:QNameThe qualified name of the interface exposed by the endpoint.
reportErrorsxs:booleanIndicates if faults and errors from splitted parts should be sent back to the consumer. In such a case, only the first fault or error received will be reported. Note that if the consumer is synchronous, it will be blocked until all parts have been successfully acked, or a fault or error is reported, and the exchange will be kept in the store for recovery.
servicexs:QNameThe qualified name of the service the endpoint exposes.
synchronousxs:booleanSpecifies wether exchanges for all parts are sent synchronously or not.
wsdlResourcexs:stringWhen specified, this spring resource will be used to load the WSDL that will be exposed as a description for this endpoint. This property can be used to explicitely define the WSDL to be exposed by this endpoint. This property takes precedence over the wsdlExchangeTarget property.
xpathxs:stringThe xpath expression used to split the input message.
ElementTypeDescription
factory<spring:bean/>The XPath factory. If no factory is explicitely configured, a defaut one will be created using XPathFactory.newInstance().
functionResolver<spring:bean/>The function resolver.
lockManager<spring:bean/>The lock manager to use for this endpoint. If none is explicitely specified a default implementation will be provided.
namespaceContextnamespace-contextThe namespace context to use when evaluating the xpath expression
store<spring:bean/>Configure the store to use. If none is explicitely configured, the storeFactory will be used to create one.
storeFactory<spring:bean/>The store factory to use when creating a store. If no factory is explicitely defined, an in-memory only factory will be created.
targetexchange-targetThe address of the target endpoint.
timerManager<spring:bean/>The timer manager to use for this endpoint. If none is explicitely configured, a default implementation will be provided.
variableResolver<spring:bean/>The variable resolver. The default one will enable the use of properties on the message, exchange, as well as making system properties and environment properties available.
wsdlExchangeTargetexchange-targetAn exchange target pointing to a JBI endpoint that will be used to load the WSDL describing this endpoint. This can be used when the endpoint proxies another endpoint so that the same WSDL definition will be exposed."