Author: amilas Date: Mon Feb 14 11:05:51 2011 New Revision: 1070439 URL: http://svn.apache.org/viewvc?rev=1070439&view=rev Log: commit the patch for AXIS2-4671
Modified: axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/context/MessageContext.java Modified: axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/context/MessageContext.java URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/context/MessageContext.java?rev=1070439&r1=1070438&r2=1070439&view=diff ============================================================================== --- axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/context/MessageContext.java (original) +++ axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/context/MessageContext.java Mon Feb 14 11:05:51 2011 @@ -1598,6 +1598,8 @@ public class MessageContext extends Abst AxisBindingMessage bindingMessage = (AxisBindingMessage) getProperty(Constants.AXIS_BINDING_MESSAGE); + AxisBinding binding; + // If AxisBindingMessage is not set, try to find the binding message from the AxisService if (bindingMessage == null) { bindingMessage = findBindingMessage(); @@ -1605,7 +1607,10 @@ public class MessageContext extends Abst if (bindingMessage != null) { return bindingMessage.getEffectivePolicy(); - // If we can't find the AxisBindingMessage, then try the AxisMessage + // If we can't find the AxisBindingMessage, then try the AxisBinding + } else if ((binding = findBinding()) != null) { + return binding.getEffectivePolicy(); + // If we can't find the AxisBindingMessage, then try the AxisMessage } else if (axisMessage != null) { return axisMessage.getEffectivePolicy(); } else { @@ -1621,6 +1626,19 @@ public class MessageContext extends Abst } } + private AxisBinding findBinding() { + if (axisService != null) { + if (axisService.getEndpointName() != null) { + AxisEndpoint axisEndpoint = axisService + .getEndpoint(axisService.getEndpointName()); + if (axisEndpoint != null) { + return axisEndpoint.getBinding(); + } + } + } + return null; + } + private AxisBindingMessage findBindingMessage() { if (axisService != null && axisOperation != null ) { if (axisService.getEndpointName() != null) {