Good information. Thanks Eoghan.

In my case I will be setting the MessageId in the application layer and this is 
working great.

Just for my knowledge, where and by which interceptor method in the interceptor 
chain does the MessageId get generated?
By your comment below, it must be in an interceptor in the PRE_LOGICAL phase?

I am new to CXF. In the CXF documentation I see the ordered list of inbound and 
outbound Phases but I don't see which interceptors are in each phase and in 
what order. Is there a document that shows all of the interceptors running in 
each Phase and each interceptor's responsibility?

Thanks,

Jeff

________________________________
From: Eoghan Glynn [mailto:[email protected]]
Sent: Wednesday, March 18, 2009 11:51 AM
To: [email protected]; Constantin, Jeffrey (CCI-Atlanta)
Cc: [email protected]
Subject: Re: Tacking messages across several SOAP Request


If using the WS-Addressing headers, just make sure you set this messageID in 
the AddressingProperties in the request context before the WS-A MAPAggregator 
interceptor is traversed.

So no problem doing it in the application layer (as per the the ws_a demo). But 
if you're setting it in an interceptor, make sure this runs in a phase prior to 
PRE_LOGICAL, or use the PhaseInterceptor.addBefore() mechanism if running in 
the same phase.

>From the point of view of ID uniqueness, CXF just fabricates a URN with the 
>unique material being provided by java.util.UUID.randomUUID().

Cheers,
Eoghan

2009/3/18 <[email protected]<mailto:[email protected]>>
Now I just have to determine when to set this MesssageID and how to ensure it 
is unique. More fun for me.

Reply via email to