You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by pr...@apache.org on 2007/02/23 18:50:37 UTC
svn commit: r511038 -
/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/util/MessageContextBuilder.java
Author: pradine
Date: Fri Feb 23 09:50:36 2007
New Revision: 511038
URL: http://svn.apache.org/viewvc?view=rev&rev=511038
Log:
Only set a ReplyTo and a MessageID on async response messages.
Modified:
webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/util/MessageContextBuilder.java
Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/util/MessageContextBuilder.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/util/MessageContextBuilder.java?view=diff&rev=511038&r1=511037&r2=511038
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/util/MessageContextBuilder.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/util/MessageContextBuilder.java Fri Feb 23 09:50:36 2007
@@ -70,7 +70,6 @@
newmsgCtx.setSessionContext(inMessageContext.getSessionContext());
newmsgCtx.setTransportIn(inMessageContext.getTransportIn());
newmsgCtx.setTransportOut(inMessageContext.getTransportOut());
- newmsgCtx.setMessageID(UUIDGenerator.getUUID());
newmsgCtx.setServerSide(inMessageContext.isServerSide());
newmsgCtx.addRelatesTo(new RelatesTo(inMessageContext.getOptions().getMessageId()));
@@ -136,6 +135,8 @@
else
newmsgCtx.setReplyTo(new EndpointReference(AddressingConstants.Final.WSA_NONE_URI));
+ newmsgCtx.setMessageID(UUIDGenerator.getUUID());
+
// add the service group id as a reference parameter
String serviceGroupContextId = inMessageContext.getServiceGroupContextId();
if (serviceGroupContextId != null && !"".equals(serviceGroupContextId)) {
@@ -144,7 +145,12 @@
Constants.SERVICE_GROUP_ID, Constants.AXIS2_NAMESPACE_PREFIX), serviceGroupContextId);
}
} else {
- newmsgCtx.setReplyTo(new EndpointReference(AddressingConstants.Final.WSA_NONE_URI));
+ // Only set a ReplyTo and a MessageId on async response messages.
+ EndpointReference outboundToEPR = newmsgCtx.getTo();
+ if (outboundToEPR != null && !outboundToEPR.hasAnonymousAddress()) {
+ newmsgCtx.setMessageID(UUIDGenerator.getUUID());
+ newmsgCtx.setReplyTo(new EndpointReference(AddressingConstants.Final.WSA_NONE_URI));
+ }
}
// Set wsa:Action for response message
@@ -201,7 +207,7 @@
return faultMessageContext;
}
}
-
+
// Create a basic response MessageContext with basic fields copied
MessageContext faultContext = createResponseMessageContext(processingContext);
@@ -218,9 +224,6 @@
faultContext.setProcessingFault(true);
- // Not worth setting up the session information on a fault flow
- faultContext.setReplyTo(new EndpointReference(AddressingConstants.Final.WSA_NONE_URI));
-
// Set wsa:Action for response message
// Use specified value if available
AxisOperation op = processingContext.getAxisOperation();
@@ -247,8 +250,17 @@
} else {
faultContext.setTo(processingContext.getReplyTo());
}
+
if(faultContext.getTo() == null){
faultContext.setTo(new EndpointReference(AddressingConstants.Final.WSA_ANONYMOUS_URL));
+ }
+
+ // Not worth setting up the session information on a fault flow
+ // Only set a ReplyTo and a MessageId on async response messages.
+ EndpointReference outboundToEPR = faultContext.getTo();
+ if (outboundToEPR != null && !outboundToEPR.hasAnonymousAddress()) {
+ faultContext.setMessageID(UUIDGenerator.getUUID());
+ faultContext.setReplyTo(new EndpointReference(AddressingConstants.Final.WSA_NONE_URI));
}
// do Target Resolution
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-cvs-help@ws.apache.org