Author: sanka Date: Mon Jun 9 10:41:23 2008 New Revision: 18245 URL: http://wso2.org/svn/browse/wso2?view=rev&revision=18245
Log: Modified: branches/wsas/java/2.3/axis2-1.4-patched/modules/kernel/src/org/apache/axis2/description/WSDL11ToAxisServiceBuilder.java branches/wsas/java/2.3/rampart/modules/rampart-core/src/main/java/org/apache/rampart/util/RampartUtil.java Modified: branches/wsas/java/2.3/axis2-1.4-patched/modules/kernel/src/org/apache/axis2/description/WSDL11ToAxisServiceBuilder.java URL: http://wso2.org/svn/browse/wso2/branches/wsas/java/2.3/axis2-1.4-patched/modules/kernel/src/org/apache/axis2/description/WSDL11ToAxisServiceBuilder.java?rev=18245&r1=18244&r2=18245&view=diff ============================================================================== --- branches/wsas/java/2.3/axis2-1.4-patched/modules/kernel/src/org/apache/axis2/description/WSDL11ToAxisServiceBuilder.java (original) +++ branches/wsas/java/2.3/axis2-1.4-patched/modules/kernel/src/org/apache/axis2/description/WSDL11ToAxisServiceBuilder.java Mon Jun 9 10:41:23 2008 @@ -473,7 +473,6 @@ for (Iterator iterator = wsdl4jPorts.values().iterator(); iterator.hasNext();) { port = (Port) iterator.next(); - System.err.println("Populating port : " + port.getName()); // if the user has picked a port then we have to process only that port if ((this.portName == null) || (this.portName.equals(port.getName()))) { // we process the port only if it has the same port type as the selected binding Modified: branches/wsas/java/2.3/rampart/modules/rampart-core/src/main/java/org/apache/rampart/util/RampartUtil.java URL: http://wso2.org/svn/browse/wso2/branches/wsas/java/2.3/rampart/modules/rampart-core/src/main/java/org/apache/rampart/util/RampartUtil.java?rev=18245&r1=18244&r2=18245&view=diff ============================================================================== --- branches/wsas/java/2.3/rampart/modules/rampart-core/src/main/java/org/apache/rampart/util/RampartUtil.java (original) +++ branches/wsas/java/2.3/rampart/modules/rampart-core/src/main/java/org/apache/rampart/util/RampartUtil.java Mon Jun 9 10:41:23 2008 @@ -47,6 +47,7 @@ import org.apache.axis2.mex.om.Metadata; import org.apache.axis2.mex.om.MetadataReference; import org.apache.axis2.mex.om.MetadataSection; +import org.apache.axis2.util.PolicyUtil; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.apache.neethi.Policy; @@ -1500,6 +1501,8 @@ // OK .. now we try to figure out whether we can find an appropriate binding. AxisMessage message = messageContext.getAxisMessage(); + Policy bindingPolicy = null; + if (message != null) { SOAPEnvelope env = messageContext.getEnvelope(); if (env != null) { @@ -1516,15 +1519,36 @@ targetBinding = Utils.getSoap12Binding(service); } if (targetBinding != null) { + List policies = new ArrayList(); AxisBindingOperation targetBindingOperation = Utils .getBindingOperation(targetBinding, operation); - AxisBindingMessage targetBindingMessage = Utils - .getBindingMessage(targetBindingOperation, message); - return targetBindingMessage.getEffectivePolicy(); + if (targetBindingOperation != null) { + AxisBindingMessage targetBindingMessage = Utils.getBindingMessage(targetBindingOperation, message); + if (targetBindingMessage != null) { + return targetBindingMessage.getEffectivePolicy(); + } else { + policies.addAll(targetBindingOperation + .getPolicySubject() + .getAttachedPolicyComponents()); + } + } else { + policies.addAll(targetBinding.getPolicySubject().getAttachedPolicyComponents()); + } + if (! policies.isEmpty()) { + bindingPolicy = PolicyUtil.getMergedPolicy(policies, service); + } + } + } + + Policy descriptionPolicy = message.getEffectivePolicy(); + if (descriptionPolicy != null) { + if (bindingPolicy != null) { + return descriptionPolicy.merge(bindingPolicy); + } else { + return descriptionPolicy; } - } else { - return message.getEffectivePolicy(); + return bindingPolicy; } } return null; _______________________________________________ Wsas-java-dev mailing list [email protected] http://wso2.org/cgi-bin/mailman/listinfo/wsas-java-dev
