I have a question about the Sandesha1 code. In
org.apache.sandesha.util.RMMessageCreator.createTerminateSequence()
there are the following lines of code:

(1) AddressingHeaders addHeaders =
getAddressingHeadersForTerminateSequence(rmMsgCtx, endPoint);
(2) SOAPEnvelope soe = new SOAPEnvelope();
(3) addHeaders.toEnvelope(soe);
(4) AddressingHeaders terSqAddrHeaders = new AddressingHeaders(soe);
(5) terSqAddrHeaders.setAction(new Action(new
URI(Constants.WSRM.ACTION_TERMINATE_SEQUENCE)));
(6) terSeqRMMsgContext.setAddressingHeaders(terSqAddrHeaders);

So (1), obviously, is a call to an internal method to construct the
WS-Addressing headers needed for a TerminateSequence message. Its (2-4)
that are puzzling me. Why create a SOAPEnvelope (that is never used
again BTW), add the headers to this envelope, then turn around and
construct another set of headers from this envelope? Is this some kind
of work-around to a bug in either Axis or Apache Addressing?

- gp

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to