You are viewing a plain text version of this content. The canonical link for it is here.
Posted to sandesha-dev@ws.apache.org by mc...@apache.org on 2008/06/23 09:54:13 UTC
svn commit: r670465 -
/webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/util/RMMsgCreator.java
Author: mckierna
Date: Mon Jun 23 00:54:13 2008
New Revision: 670465
URL: http://svn.apache.org/viewvc?rev=670465&view=rev
Log:
CSeq use correct replyTo: http://issues.apache.org/jira/browse/SANDESHA2-163
Modified:
webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/util/RMMsgCreator.java
Modified: webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/util/RMMsgCreator.java
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/util/RMMsgCreator.java?rev=670465&r1=670464&r2=670465&view=diff
==============================================================================
--- webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/util/RMMsgCreator.java (original)
+++ webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/util/RMMsgCreator.java Mon Jun 23 00:54:13 2008
@@ -86,7 +86,8 @@
* @throws SandeshaException
*/
public static RMMsgContext createCreateSeqMsg(RMSBean rmsBean, RMMsgContext applicationRMMsg) throws AxisFault {
-
+ if(log.isDebugEnabled()) log.debug("Entry: RMMsgCreator::createCreateSeqMsg " + applicationRMMsg);
+
MessageContext applicationMsgContext = applicationRMMsg.getMessageContext();
if (applicationMsgContext == null)
throw new SandeshaException(SandeshaMessageHelper.getMessage(SandeshaMessageKeys.appMsgIsNull));
@@ -126,6 +127,7 @@
else
addressingNamespace = AddressingConstants.Final.WSA_NAMESPACE;
}
+ if(log.isDebugEnabled()) log.debug("RMMsgCreator:: addressing name space is " + addressingNamespace);
// If acksTo has not been set, then default to anonymous, using the correct spec level
EndpointReference acksToEPR = rmsBean.getAcksToEndpointReference();
@@ -142,6 +144,7 @@
Parameter p = service.getParameter(Sandesha2Constants.SERVICE_CONTAINS_OUT_IN_MEPS);
if(p != null && p.getValue() != null) {
twoWayService = ((Boolean) p.getValue()).booleanValue();
+ if(log.isDebugEnabled()) log.debug("RMMsgCreator:: twoWayService " + twoWayService);
}
}
@@ -201,15 +204,19 @@
throw new SandeshaException(message);
}
createSeqRMMsg.setTo(toEPR);
+ if(log.isDebugEnabled()) log.debug("RMMsgCreator:: toEPR=" + toEPR);
EndpointReference replyToEPR = rmsBean.getReplyToEndpointReference();
if(replyToEPR != null) {
replyToEPR = SandeshaUtil.getEPRDecorator(createSeqRMMsg.getConfigurationContext()).decorateEndpointReference(replyToEPR);
createSeqRMMsg.setReplyTo(replyToEPR);
+ if(log.isDebugEnabled()) log.debug("RMMsgCreator:: replyToEPR=" + replyToEPR);
}
+
AcksTo acksTo = new AcksTo(acksToEPR, rmNamespaceValue, addressingNamespace);
createSequencePart.setAcksTo(acksTo);
+ if(log.isDebugEnabled()) log.debug("RMMsgCreator:: acksTo=" + acksTo);
createSeqRMMsg.setCreateSequence(createSequencePart);
@@ -240,6 +247,7 @@
createSeqRMMsg.addSOAPEnvelope();
+ if(log.isDebugEnabled()) log.debug("Entry: RMMsgCreator::createCreateSeqMsg " + createSeqRMMsg);
return createSeqRMMsg;
}
@@ -318,6 +326,8 @@
*/
public static RMMsgContext createCreateSeqResponseMsg(RMMsgContext createSeqMessage, RMSequenceBean rmSequenceBean) throws AxisFault {
+ if(log.isDebugEnabled()) log.debug("Entry: RMMsgCreator::createCreateSeqResponseMsg " + rmSequenceBean);
+
CreateSequence cs = createSeqMessage.getCreateSequence();
String namespace = createSeqMessage.getRMNamespaceValue();
@@ -328,6 +338,7 @@
SequenceOffer offer = cs.getSequenceOffer();
if (offer != null) {
+ if(log.isDebugEnabled()) log.debug("RMMsgCreator:: " + offer);
String outSequenceId = offer.getIdentifer().getIdentifier();
if (outSequenceId != null && !"".equals(outSequenceId)) {
@@ -354,12 +365,18 @@
String version = SpecSpecificConstants.getSpecVersionString(namespace);
String action = SpecSpecificConstants.getCreateSequenceResponseAction(version);
- return createResponseMsg(createSeqMessage, rmSequenceBean, response,
+ RMMsgContext returnRMContext = createResponseMsg(createSeqMessage, rmSequenceBean, response,
Sandesha2Constants.MessageParts.CREATE_SEQ_RESPONSE,action);
+
+ returnRMContext.setTo(createSeqMessage.getReplyTo()); //CSResponse goes to the replyTo, NOT the acksTo
+
+ if(log.isDebugEnabled()) log.debug("Exit: RMMsgCreator::createCreateSeqResponseMsg " + returnRMContext);
+ return returnRMContext;
}
public static RMMsgContext createTerminateSeqResponseMsg(RMMsgContext terminateSeqRMMsg, RMSequenceBean rmSequenceBean) throws AxisFault {
-
+ if(log.isDebugEnabled())
+ log.debug("Entry: RMMsgCreator::createTerminateSeqResponseMsg " + rmSequenceBean);
TerminateSequence terminateSequence = terminateSeqRMMsg.getTerminateSequence();
String sequenceID = terminateSequence.getIdentifier().getIdentifier();
@@ -372,13 +389,21 @@
String version = SpecSpecificConstants.getSpecVersionString(namespace);
String action = SpecSpecificConstants.getTerminateSequenceResponseAction(version);
-
- return createResponseMsg(terminateSeqRMMsg, rmSequenceBean, terminateSequenceResponse,
+
+ RMMsgContext returnRMContext = createResponseMsg(terminateSeqRMMsg, rmSequenceBean, terminateSequenceResponse,
Sandesha2Constants.MessageParts.TERMINATE_SEQ_RESPONSE, action);
+ if(rmSequenceBean.getAcksToEndpointReference()!=null){
+ returnRMContext.setTo(rmSequenceBean.getAcksToEndpointReference()); //RSP requirement
+ }
+ if(log.isDebugEnabled())
+ log.debug("Exit: RMMsgCreator::createTerminateSeqResponseMsg " + returnRMContext);
+ return returnRMContext;
+
}
public static RMMsgContext createCloseSeqResponseMsg(RMMsgContext closeSeqRMMsg, RMSequenceBean rmSequenceBean) throws AxisFault {
-
+ if(log.isDebugEnabled())
+ log.debug("Entry: RMMsgCreator::createCloseSeqResponseMsg " + rmSequenceBean);
CloseSequence closeSequence = closeSeqRMMsg.getCloseSequence();
String sequenceID = closeSequence.getIdentifier().getIdentifier();
@@ -392,8 +417,14 @@
String version = SpecSpecificConstants.getSpecVersionString(namespace);
String action = SpecSpecificConstants.getCloseSequenceResponseAction(version);
- return createResponseMsg(closeSeqRMMsg, rmSequenceBean, closeSequenceResponse,
+ RMMsgContext returnRMContext = createResponseMsg(closeSeqRMMsg, rmSequenceBean, closeSequenceResponse,
Sandesha2Constants.MessageParts.CLOSE_SEQUENCE_RESPONSE, action);
+ if(rmSequenceBean.getAcksToEndpointReference()!=null){
+ returnRMContext.setTo(rmSequenceBean.getAcksToEndpointReference()); //RSP requirement
+ }
+ if(log.isDebugEnabled())
+ log.debug("Exit: RMMsgCreator::createCloseSeqResponseMsg " + returnRMContext);
+ return returnRMContext;
}
/**
@@ -414,9 +445,6 @@
MessageContext outMessage = MessageContextBuilder.createOutMessageContext (requestMsg.getMessageContext());
RMMsgContext responseRMMsg = new RMMsgContext(outMessage);
- if(rmSequenceBean.getAcksToEndpointReference()!=null){
- responseRMMsg.setTo(rmSequenceBean.getAcksToEndpointReference());
- }
SOAPFactory factory = SOAPAbstractFactory.getSOAPFactory(SandeshaUtil.getSOAPVersion(requestMsg.getSOAPEnvelope()));
String namespace = requestMsg.getRMNamespaceValue();
---------------------------------------------------------------------
To unsubscribe, e-mail: sandesha-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: sandesha-dev-help@ws.apache.org