|
Key
This line was removed.
This word was removed. This word was added.
This line was added.
|
Changes (12)
View Page History|| Parameter || Description \\ || Default \\ || Required by pattern \\ ||
| eip | The name of the pattern to execute : {{routing-slip}}. \\ | \- | all |
| eip | The name of the pattern to execute : {{routing-slip}}. \\ | \- | all |
| fault-to-exception \\ | If true, a fault received from the target service is transformed to an exception into the source exchange. \\ | false | bridge \\
router \\
dynamicrouter \\
routing-slip \\
dispatcher |
The EIP Component chains invocation of the referenced services in the {{consumes}} sections, in the order that they are declared. The IN message of the incoming exchange is sent to the first service; the OUT response of this service is sent to the second service as an IN message, and so on. The last target exchange is matched with the source exchange as better as possible. So :
{note:title=Caution}by default, the process stops when an Exception is returned by the provider{note}
\\
\\
{note:title=Caution}message exchange pattern of all the target exchanges, except the last, is {{InOut{}}}{note}
\\
{note:title=Caution}all the Message Exchange Pattern are accepted for the source exchange{note}
{note:title=Caution}all the Message Exchange Pattern are accepted for the source exchange{note}
*Configuration of a Service Unit to provide a service (EIP)*
|| Parameter || Description \\ || Default \\ || Required by pattern \\ ||
| eip | The name of the pattern to execute : {{wire-tap}} \\ | \- | All |
| wiretap-way | Exchange way on which the message should be copied and sent to the monitoring service. \\
Values are request (copy IN), response (copy OUT/Fault), {{request-response}} (copy IN and OUT/Fault), {{request-on-response}} (copy IN after OUT is received; not copied if Fault or Error) \\ | \- | wire-tap |
| eip | The name of the pattern to execute : {{wire-tap}} \\ | \- | All |
| wiretap-way | Exchange way on which the message should be copied and sent to the monitoring service. \\
Values are request (copy IN), response (copy OUT/Fault), {{request-response}} (copy IN and OUT/Fault), {{request-on-response}} (copy IN after OUT is received; not copied if Fault or Error) \\ | \- | wire-tap |
{loremipsum:5} \\
The EIP Component copy the IN or OUT/Fault message of the exchange between the consumer and the provider of the functional service to a 'monitoring' service. The SU parameter wiretap-way determines which way of the invocation is relayed to the 'monitoring' service. At each way correspond a message of the exchange to copy. The copied message is sent to the 'monitoring' service as an IN message using the InOnly exchange pattern. The first consumes section references the provider, the second one references the 'monitoring' service.
An example of service unit configuration :
{code:lang=xml}<?xml version="1.0" encoding="UTF-8"?>
<!-- JBI descriptor for the PEtALS component "EIP" -->
<jbi:jbi version="1.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:jbi="http://java.sun.com/xml/ns/jbi"
xmlns:petalsCDK="http://petals.ow2.org/components/extensions/version-5"
xmlns:eip="http://petals.ow2.org/components/eip/version-2"
xmlns:test="http://petals.ow2.org/test">
<jbi:services binding-component="false">
<jbi:provides
interface-name="test:wireTap"
service-name="test:wireTapService1"
endpoint-name="wireTapService1Endpoint">
<petalsCDK:wsdl xsi:nil="true" />
<eip:eip>wire-tap</eip:eip>
<eip:wiretap-way>request</eip:wiretap-way>
</jbi:provides>
<jbi:consumes interface-name="test:aggregateProvider"
service-name="test:aggregateProviderService1"
endpoint-name="aggregateProviderService1Endpoint">
<petalsCDK:operation xmlns:petals="http://org.ow2.petals">petals:operation</petalsCDK:operation>
<petalsCDK:mep>InOut</petalsCDK:mep>
</jbi:consumes>
<!-- monitoring -->
<jbi:consumes interface-name="test:aggregateProvider"
service-name="test:aggregateProviderService2"
endpoint-name="aggregateProviderService2Endpoint">
<petalsCDK:operation xmlns:petals="http://org.ow2.petals">petals:operation</petalsCDK:operation>
<petalsCDK:mep>InOut</petalsCDK:mep>
</jbi:consumes>
</jbi:services>
</jbi:jbi>{code}
{note:title=Caution}
{{consumes}} sections cardinality is 2.
{note}
{note:title=Caution}
message exchange pattern of the second target exchange, the "monitoring" exchange, is {{InOnly}}
{note}
{note:title=Caution}
all the Message Exchange Pattern are accepted for the source exchange
{note}
{code:lang=xml}<?xml version="1.0" encoding="UTF-8"?>
<!-- JBI descriptor for the PEtALS component "EIP" -->
<jbi:jbi version="1.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:jbi="http://java.sun.com/xml/ns/jbi"
xmlns:petalsCDK="http://petals.ow2.org/components/extensions/version-5"
xmlns:eip="http://petals.ow2.org/components/eip/version-2"
xmlns:test="http://petals.ow2.org/test">
<jbi:services binding-component="false">
<jbi:provides
interface-name="test:wireTap"
service-name="test:wireTapService1"
endpoint-name="wireTapService1Endpoint">
<petalsCDK:wsdl xsi:nil="true" />
<eip:eip>wire-tap</eip:eip>
<eip:wiretap-way>request</eip:wiretap-way>
</jbi:provides>
<jbi:consumes interface-name="test:aggregateProvider"
service-name="test:aggregateProviderService1"
endpoint-name="aggregateProviderService1Endpoint">
<petalsCDK:operation xmlns:petals="http://org.ow2.petals">petals:operation</petalsCDK:operation>
<petalsCDK:mep>InOut</petalsCDK:mep>
</jbi:consumes>
<!-- monitoring -->
<jbi:consumes interface-name="test:aggregateProvider"
service-name="test:aggregateProviderService2"
endpoint-name="aggregateProviderService2Endpoint">
<petalsCDK:operation xmlns:petals="http://org.ow2.petals">petals:operation</petalsCDK:operation>
<petalsCDK:mep>InOut</petalsCDK:mep>
</jbi:consumes>
</jbi:services>
</jbi:jbi>{code}
{note:title=Caution}
{{consumes}} sections cardinality is 2.
{note}
{note:title=Caution}
message exchange pattern of the second target exchange, the "monitoring" exchange, is {{InOnly}}
{note}
{note:title=Caution}
all the Message Exchange Pattern are accepted for the source exchange
{note}
h3. Splitter Pattern
*Configuration of a Service Unit to provide a service (EIP)*
{loremipsum:5}
h3. Bridge Pattern