You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@synapse.apache.org by as...@apache.org on 2009/03/27 17:32:12 UTC
svn commit: r759202 - in
/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse:
SynapseConstants.java core/axis2/Axis2FlexibleMEPClient.java
Author: asankha
Date: Fri Mar 27 16:32:11 2009
New Revision: 759202
URL: http://svn.apache.org/viewvc?rev=759202&view=rev
Log:
fix SYNAPSE-525 and correct error made in the fix of SYNAPSE-422
Modified:
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/SynapseConstants.java
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/Axis2FlexibleMEPClient.java
Modified: synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/SynapseConstants.java
URL: http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/SynapseConstants.java?rev=759202&r1=759201&r2=759202&view=diff
==============================================================================
--- synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/SynapseConstants.java (original)
+++ synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/SynapseConstants.java Fri Mar 27 16:32:11 2009
@@ -139,6 +139,9 @@
public static final String RESPONSE = "RESPONSE";
/** The Synapse MC property that marks the message as a OUT_ONLY message */
public static final String OUT_ONLY = "OUT_ONLY";
+ /** The Synapse MC property that states that existing WS-A headers in the envelope should
+ * be preserved */
+ public static final String PRESERVE_WS_ADDRESSING = "PRESERVE_WS_ADDRESSING";
//-- error handling --
/** An Axis2 message context property indicating a transport send failure */
Modified: synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/Axis2FlexibleMEPClient.java
URL: http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/Axis2FlexibleMEPClient.java?rev=759202&r1=759201&r2=759202&view=diff
==============================================================================
--- synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/Axis2FlexibleMEPClient.java (original)
+++ synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/Axis2FlexibleMEPClient.java Fri Mar 27 16:32:11 2009
@@ -113,7 +113,8 @@
// create a new MessageContext to be sent out as this should not corrupt the original
// we need to create the response to the original message later on
- MessageContext axisOutMsgCtx = cloneForSend(originalInMsgCtx, wsAddressingEnabled);
+ MessageContext axisOutMsgCtx = cloneForSend(originalInMsgCtx,
+ (String) synapseOutMessageContext.getProperty(SynapseConstants.PRESERVE_WS_ADDRESSING));
if (log.isDebugEnabled()) {
log.debug("Message [Original Request Message ID : " + synapseOutMessageContext.getMessageID()
@@ -317,12 +318,14 @@
mepClient.execute(true);
}
- private static MessageContext cloneForSend(MessageContext ori, boolean wsAddressingEnabled) throws AxisFault {
+ private static MessageContext cloneForSend(MessageContext ori, String preserveWSAdd) throws AxisFault {
MessageContext newMC = MessageHelper.clonePartially(ori);
newMC.setEnvelope(ori.getEnvelope());
- if (wsAddressingEnabled) {
+ if (preserveWSAdd != null && Boolean.parseBoolean(preserveWSAdd)) {
+ newMC.setMessageID(ori.getMessageID());
+ } else {
MessageHelper.removeAddressingHeaders(newMC);
}