I don't think so, as the container (or the ecxhange factory) has no way
to know which jbi exchange is currently handled by the component.
And you can not use a thread local, has the component may delegate
the exhcange processing to another thread.
That's the reason why it has been implemented in servicemix-common.
Do you see something else ?

On 1/23/07, Thomas TERMIN <[EMAIL PROTECTED]> wrote:
A question again. If I have a lw component which opens a new message
exchange the correlation id has to be propageted in the component
itself. Would it be better or is it possible to do this automaticaly in
the exchange factory?

Cheers,
Thomas

Guillaume Nodet wrote:
> The way it works now is that
> all components using servicemix-common that create an exchange
> as part of the processing of a received exchange, will automatically
> put the correlationId in the new exchange properties.
> The correlationId is equal to correlationId of the input exchange, or the
> input exchange id if no correlation id is set.
>
> So if an endpoint A sends a JBI exchange to enpoint B, and endpoint B
> sends a jbi exchange to endpoint C while processing the exchange,
> both exchange will have the same correlationId.
>
> If we write a MessageExchange event listener, we should be able to
> retrieve all these informations.  Note that the flow can be retrieved
> with the same logic used in the DotViewFlowListener instead.
>
> Just copy the DotViewFlowListener and change the drawing
> logic.  What tool are will you use to draw the flow ?  The output
> of the DotViewFlowListener is not very impressive, so any
> improvement would be welcome.
>
> On 1/10/07, Thomas TERMIN <[EMAIL PROTECTED]> wrote:
>> How is this intended to work? I want to implement a tracing tool or
>> whatever to see the flows between the components.
>>
>> Cheers
>>
>> Guillaume Nodet wrote:
>> > No one leverage the correlation ids, but i it could / should
>> > be done.  What kind of informations are you looking for ?
>> >
>> > On 1/10/07, Thomas TERMIN <[EMAIL PROTECTED]> wrote:
>> >> Hello,
>> >>
>> >> How can I enable tracing in servicemix with the new correlation id
>> >> mechanism. How do I have to use this? (I don't want to use the
>> >> DotViewFlowListener)
>> >>
>> >> Cheers,
>> >> Thomas
>> >>
>> >
>> >
>>
>>
>
>




--
Cheers,
Guillaume Nodet
------------------------
Architect, LogicBlaze (http://www.logicblaze.com/)
Blog: http://gnodet.blogspot.com/

Reply via email to