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 di...@apache.org on 2004/07/02 20:22:21 UTC
cvs commit: ws-axis/java/src/org/apache/axis/handlers/soap MustUnderstandChecker.java
dims 2004/07/02 11:22:21
Modified: java/src/org/apache/axis/handlers/soap
MustUnderstandChecker.java
Log:
Ignore MU if the header is destined to reach the operation.
Revision Changes Path
1.3 +9 -0 ws-axis/java/src/org/apache/axis/handlers/soap/MustUnderstandChecker.java
Index: MustUnderstandChecker.java
===================================================================
RCS file: /home/cvs/ws-axis/java/src/org/apache/axis/handlers/soap/MustUnderstandChecker.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- MustUnderstandChecker.java 22 Jun 2004 16:58:23 -0000 1.2
+++ MustUnderstandChecker.java 2 Jul 2004 18:22:21 -0000 1.3
@@ -20,6 +20,7 @@
import org.apache.axis.Constants;
import org.apache.axis.MessageContext;
import org.apache.axis.Message;
+import org.apache.axis.description.OperationDesc;
import org.apache.axis.components.logger.LogFactory;
import org.apache.axis.handlers.BasicHandler;
import org.apache.axis.message.SOAPEnvelope;
@@ -73,6 +74,14 @@
while (enumeration.hasMoreElements()) {
SOAPHeaderElement header = (SOAPHeaderElement) enumeration.
nextElement();
+
+ // Ignore header, if it is a parameter to the operation
+ if(msgContext != null && msgContext.getOperation() != null) {
+ OperationDesc oper = msgContext.getOperation();
+ if(oper.getParamByQName(header.getQName())!=null) {
+ continue;
+ }
+ }
if (header.getMustUnderstand() && !header.isProcessed()) {
if (misunderstoodHeaders == null)
misunderstoodHeaders = new Vector();