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 ba...@apache.org on 2007/07/17 21:00:25 UTC
svn commit: r557028 - in /webservices/axis2/trunk/java/modules: jaxws/
jaxws/test-resources/ jaxws/test/org/apache/axis2/jaxws/framework/
jaxws/test/org/apache/axis2/jaxws/provider/
jaxws/test/org/apache/axis2/jaxws/provider/soapmsgmu/ kernel/src/org/a...
Author: barrettj
Date: Tue Jul 17 12:00:23 2007
New Revision: 557028
URL: http://svn.apache.org/viewvc?view=rev&rev=557028
Log:
Undo changes made in revision 556761 for AXIS2-2853 per discussion on the list and in IRC.
Removed:
webservices/axis2/trunk/java/modules/jaxws/test-resources/axis2.xml
webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/provider/SoapMessageMUProviderChecker.java
webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/provider/SoapMessageMUProviderTests.java
webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/provider/soapmsgmu/
webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/util/SOAPMustUnderstandHeaderChecker.java
Modified:
webservices/axis2/trunk/java/modules/jaxws/pom.xml
webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/framework/JAXWSTest.java
webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/provider/AttachmentUtil.java
webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/deployment/AxisConfigBuilder.java
webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/deployment/DeploymentConstants.java
webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/deployment/axis2_default.xml
webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/engine/AxisConfiguration.java
webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/engine/AxisEngine.java
Modified: webservices/axis2/trunk/java/modules/jaxws/pom.xml
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/jaxws/pom.xml?view=diff&rev=557028&r1=557027&r2=557028
==============================================================================
--- webservices/axis2/trunk/java/modules/jaxws/pom.xml (original)
+++ webservices/axis2/trunk/java/modules/jaxws/pom.xml Tue Jul 17 12:00:23 2007
@@ -465,17 +465,6 @@
<include name="org/apache/axis2/jaxws/server/**"/>
</fileset>
</copy>
- <copy toDir="target/test-classes/services/SoapMessageMUProviderService/">
- <fileset dir="target/test-classes">
- <include name="org/apache/axis2/jaxws/provider/soapmsgmu/**"/>
- </fileset>
- <fileset dir="test/org/apache/axis2/jaxws/provider/soapmsgmu">
- <include name="META-INF/**"/>
- </fileset>
- <fileset dir="target/classes">
- <include name="org/apache/axis2/jaxws/server/**"/>
- </fileset>
- </copy>
<copy toDir="target/test-classes/services/JAXBProviderService/">
<fileset dir="target/test-classes">
<include name="org/apache/axis2/jaxws/provider/jaxb/**"/>
@@ -817,7 +806,6 @@
<copy toDir="target/test-classes/">
<fileset dir="test-resources/">
<include name="**/*.properties"/>
- <include name="**/axis2.xml"/>
</fileset>
</copy>
</tasks>
@@ -862,11 +850,6 @@
<property>
<name>build.repository</name>
<value>./target/test-classes</value>
- </property>
- <!-- Need this for the client side to pickup an axis2.xml to configure SoapMessageMUProviderChecker -->
- <property>
- <name>org.apache.axis2.jaxws.config.path</name>
- <value>./target/test-classes/axis2.xml</value>
</property>
<property>
<name>javax.xml.soap.MessageFactory</name>
Modified: webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/framework/JAXWSTest.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/framework/JAXWSTest.java?view=diff&rev=557028&r1=557027&r2=557028
==============================================================================
--- webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/framework/JAXWSTest.java (original)
+++ webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/framework/JAXWSTest.java Tue Jul 17 12:00:23 2007
@@ -58,7 +58,6 @@
import org.apache.axis2.jaxws.provider.JAXBProviderTests;
import org.apache.axis2.jaxws.provider.SOAPFaultProviderTests;
import org.apache.axis2.jaxws.provider.SoapMessageProviderTests;
-import org.apache.axis2.jaxws.provider.SoapMessageMUProviderTests;
import org.apache.axis2.jaxws.provider.SourceMessageProviderTests;
import org.apache.axis2.jaxws.provider.SourceProviderTests;
import org.apache.axis2.jaxws.provider.StringMessageProviderTests;
@@ -153,7 +152,6 @@
suite.addTestSuite(SourceMessageProviderTests.class);
// TODO FIXME: Test fails
//suite.addTestSuite(SoapMessageProviderTests.class);
- suite.addTestSuite(SoapMessageMUProviderTests.class);
suite.addTestSuite(JAXBProviderTests.class);
suite.addTestSuite(ProxyTests.class);
//TODO: FIXME - Was working, now doesn't
Modified: webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/provider/AttachmentUtil.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/provider/AttachmentUtil.java?view=diff&rev=557028&r1=557027&r2=557028
==============================================================================
--- webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/provider/AttachmentUtil.java (original)
+++ webservices/axis2/trunk/java/modules/jaxws/test/org/apache/axis2/jaxws/provider/AttachmentUtil.java Tue Jul 17 12:00:23 2007
@@ -21,23 +21,11 @@
import java.awt.*;
import java.awt.image.BufferedImage;
import java.io.OutputStream;
-import java.io.StringReader;
-import java.io.StringWriter;
import java.util.Iterator;
import javax.imageio.IIOImage;
import javax.imageio.ImageWriter;
import javax.imageio.stream.ImageOutputStream;
-import javax.xml.soap.MessageFactory;
-import javax.xml.soap.SOAPConstants;
-import javax.xml.soap.SOAPException;
-import javax.xml.soap.SOAPMessage;
-import javax.xml.transform.Result;
-import javax.xml.transform.Source;
-import javax.xml.transform.Transformer;
-import javax.xml.transform.TransformerFactory;
-import javax.xml.transform.stream.StreamResult;
-import javax.xml.transform.stream.StreamSource;
/**
* This will serve as a helper class for attachments utility methods. All methods
@@ -45,81 +33,7 @@
*
*/
public class AttachmentUtil {
- public static final String SOAP11_NAMESPACE = "http://schemas.xmlsoap.org/soap/envelope";
- public static final String SOAP12_NAMESPACE = "http://www.w3.org/2003/05/soap-envelope";
-
- public static final String MU_TEXT = "soap message mustUnderstand header request";
- public static final String UNDERSTOOD_MU_TEXT = "understood headers soap message mustUnderstand header request";
- public static final String TEXT = "soap message request";
- public static final String VALUE = "value";
- public static final String VALUE_NODE = "<"+VALUE+">";
- public static final String VALUE_NODE_SLASH = "</"+VALUE+">";
- public static final String XML_HEADER = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>";
- public static final String MUHEADER_CLIENT = "ns1:muclient";
- public static final String MUHEADER_SERVER = "ns1:muserver";
- public static final String MUHEADER_CLIENT_UNDERSTOOD = "ns1:muclientunderstood";
- public static final String MUHEADER_SERVER_UNDERSTOOD = "ns1:muserverunderstood";
- public static final String msgEnvMU =
- "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\">" +
- "<soapenv:Header>" +
- "<"+MUHEADER_CLIENT+" xmlns:ns1=\"http://ws.apache.org/axis2\" soapenv:mustUnderstand=\"1\">MUinfo</"+MUHEADER_CLIENT+">" +
- "</soapenv:Header>" +
- "<soapenv:Body>" +
- "<ns1:invoke xmlns:ns1=\"http://ws.apache.org/axis2\">" +
- VALUE_NODE +
- MU_TEXT +
- VALUE_NODE_SLASH +
- "</ns1:invoke>" +
- "</soapenv:Body>" +
- "</soapenv:Envelope>";
-
- public static final String msgEnv =
- "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\">" +
- "<soapenv:Body>" +
- "<ns1:invoke xmlns:ns1=\"http://ws.apache.org/axis2\">" +
- VALUE_NODE +
- MU_TEXT +
- VALUE_NODE_SLASH +
- "</ns1:invoke>" +
- "</soapenv:Body>" +
- "</soapenv:Envelope>";
-
- public static final String msgEnvPlain =
- "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\">" +
- "<soapenv:Body>" +
- "<ns1:invoke xmlns:ns1=\"http://ws.apache.org/axis2\">" +
- VALUE_NODE +
- TEXT +
- VALUE_NODE_SLASH +
- "</ns1:invoke>" +
- "</soapenv:Body>" +
- "</soapenv:Envelope>";
-
- public static final String msgEnvMU_understood =
- "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\">" +
- "<soapenv:Header>" +
- "<"+MUHEADER_CLIENT_UNDERSTOOD+" xmlns:ns1=\"http://ws.apache.org/axis2\" soapenv:mustUnderstand=\"1\">MUinfo</"+MUHEADER_CLIENT_UNDERSTOOD+">" +
- "</soapenv:Header>" +
- "<soapenv:Body>" +
- "<ns1:invoke xmlns:ns1=\"http://ws.apache.org/axis2\">" +
- VALUE_NODE +
- UNDERSTOOD_MU_TEXT +
- VALUE_NODE_SLASH +
- "</ns1:invoke>" +
- "</soapenv:Body>" +
- "</soapenv:Envelope>";
-
- public static final String msgEnv_understood =
- "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\">" +
- "<soapenv:Body>" +
- "<ns1:invoke xmlns:ns1=\"http://ws.apache.org/axis2\">" +
- VALUE_NODE +
- UNDERSTOOD_MU_TEXT +
- VALUE_NODE_SLASH +
- "</ns1:invoke>" +
- "</soapenv:Body>" +
- "</soapenv:Envelope>";
-
+
/**
* Store a given image to an Image output stream
* @param mimeType
@@ -142,81 +56,5 @@
ios.flush();
imageWriter.dispose();
}
-
- /**
- * Adapter method used to convert any type of Source to a String
- *
- * @param input
- * @return
- */
- public static String toString(Source input) {
-
- if (input == null)
- return null;
-
- StringWriter writer = new StringWriter();
- Transformer trasformer;
- try {
- trasformer = TransformerFactory.newInstance().newTransformer();
- Result result = new StreamResult(writer);
- trasformer.transform(input, result);
- } catch (Exception e) {
- return null;
- }
-
- return writer.getBuffer().toString();
- }
-
- /**
- * Adapter method used to convert any type of SOAPMessage to a String
- *
- * @param input
- * @return
- */
- public static String toString(SOAPMessage input) {
-
- if (input == null)
- return null;
-
- Source result = null;
- try {
- result = input.getSOAPPart().getContent();
- } catch (SOAPException e) {
- e.printStackTrace();
- }
-
- return toString(result);
- }
-
- /**
- * Method used to convert Strings to SOAPMessages
- *
- * @param msgString
- * @return
- */
- public static SOAPMessage toSOAPMessage(String msgString) {
-
- if (msgString == null) return null;
-
- SOAPMessage message = null;
- try {
- MessageFactory factory = null;
-
- // Force the usage of specific MesasgeFactories
- if (msgString.indexOf(SOAP11_NAMESPACE) >= 0) {
- factory = MessageFactory.newInstance(SOAPConstants.SOAP_1_1_PROTOCOL);
- } else {
- factory = MessageFactory.newInstance(SOAPConstants.SOAP_1_2_PROTOCOL);
- }
- message = factory.createMessage();
- message.getSOAPPart().setContent((Source) new StreamSource(new StringReader(msgString)));
- message.saveChanges();
- } catch (SOAPException e) {
- System.out.println("toSOAPMessage Exception encountered: " + e);
- e.printStackTrace();
- }
- return message;
- }
-
}
Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/deployment/AxisConfigBuilder.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/deployment/AxisConfigBuilder.java?view=diff&rev=557028&r1=557027&r2=557028
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/deployment/AxisConfigBuilder.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/deployment/AxisConfigBuilder.java Tue Jul 17 12:00:23 2007
@@ -48,7 +48,6 @@
import org.apache.axis2.transport.TransportListener;
import org.apache.axis2.transport.TransportSender;
import org.apache.axis2.util.Loader;
-import org.apache.axis2.util.SOAPMustUnderstandHeaderChecker;
import org.apache.axis2.util.TargetResolver;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
@@ -123,12 +122,6 @@
config_element.getFirstChildWithName(new QName(TAG_TARGET_RESOLVERS));
processTargetResolvers(axisConfig, targetResolvers);
- // Process SOAPMustUnderstandHeaderCheckers
- OMElement headerCheckers =
- config_element.getFirstChildWithName(new QName(TAG_MUSTUNDERSTAND_CHECKERS));
- processMustUnderstandCheckers(axisConfig, headerCheckers);
-
-
// Process Observers
Iterator obs_ittr = config_element.getChildrenWithName(new QName(TAG_LISTENER));
@@ -246,30 +239,6 @@
if (log.isTraceEnabled()) {
log.trace(
"processTargetResolvers: Exception thrown initialising TargetResolver: " +
- e.getMessage());
- }
- }
- }
- }
- }
-
- private void processMustUnderstandCheckers(AxisConfiguration axisConfig, OMElement headerCheckers) {
- if (headerCheckers != null) {
- Iterator iterator = headerCheckers.getChildrenWithName(new QName(TAG_MUSTUNDERSTAND_CHECKER));
- while (iterator.hasNext()) {
- OMElement headerChecker = (OMElement) iterator.next();
- OMAttribute classNameAttribute =
- headerChecker.getAttribute(new QName(TAG_CLASS_NAME));
- String className = classNameAttribute.getAttributeValue();
- try {
- Class classInstance = Loader.loadClass(className);
- SOAPMustUnderstandHeaderChecker checkerClass =
- (SOAPMustUnderstandHeaderChecker) classInstance.newInstance();
- axisConfig.addMustUnderstandHeaderChecker(checkerClass);
- } catch (Exception e) {
- if (log.isTraceEnabled()) {
- log.trace(
- "processHeaderCheckers: Exception thrown initialising SOAPMustUnderstandHeaderChecker: " +
e.getMessage());
}
}
Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/deployment/DeploymentConstants.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/deployment/DeploymentConstants.java?view=diff&rev=557028&r1=557027&r2=557028
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/deployment/DeploymentConstants.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/deployment/DeploymentConstants.java Tue Jul 17 12:00:23 2007
@@ -51,8 +51,6 @@
String TAG_TYPE = "type";
String TAG_TARGET_RESOLVERS = "targetResolvers";
String TAG_TARGET_RESOLVER = "targetResolver";
- String TAG_MUSTUNDERSTAND_CHECKERS = "soapMustUnderstandCheckers";
- String TAG_MUSTUNDERSTAND_CHECKER = "soapMustUnderstandChecker";
String TAG_TRANSPORT_SENDER = "transportSender";
String TAG_TRANSPORT_RECEIVER = "transportReceiver";
String TAG_SERVICE_GROUP = "serviceGroup";
Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/deployment/axis2_default.xml
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/deployment/axis2_default.xml?view=diff&rev=557028&r1=557027&r2=557028
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/deployment/axis2_default.xml (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/deployment/axis2_default.xml Tue Jul 17 12:00:23 2007
@@ -124,17 +124,6 @@
<!--<targetResolver class="" />-->
<!--</targetResolvers>-->
- <!-- ================================================= -->
- <!-- SOAP Must Understand Header Checkers -->
- <!-- ================================================= -->
- <!-- Uncomment the following and specify the class name for your SOAPMustUnderstandHeaderChecker -->
- <!-- implementation to add a header checker. Header checkers are used to identify SOAP Header -->
- <!-- QNames that will be processed by components (such as a MessageReceiver) after the point -->
- <!-- the Axis2 engine checks that all mustUnderstand headers are understood. -->
- <!-- <soapMustUnderstandCheckers> -->
- <!-- <soapMustUnderstandChecker class="" /> -->
- <!-- </soapMustUnderstandCheckers> -->
-
<!-- ================================================= -->
<!-- Transport Ins -->
Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/engine/AxisConfiguration.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/engine/AxisConfiguration.java?view=diff&rev=557028&r1=557027&r2=557028
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/engine/AxisConfiguration.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/engine/AxisConfiguration.java Tue Jul 17 12:00:23 2007
@@ -33,7 +33,6 @@
import org.apache.axis2.i18n.Messages;
import org.apache.axis2.phaseresolver.PhaseResolver;
import org.apache.axis2.transport.MessageFormatter;
-import org.apache.axis2.util.SOAPMustUnderstandHeaderChecker;
import org.apache.axis2.util.TargetResolver;
import org.apache.axis2.util.Utils;
import org.apache.commons.logging.Log;
@@ -125,8 +124,6 @@
private boolean start;
private ArrayList targetResolvers;
-
- private ArrayList mustUnderstandHeaderCheckers;
private ClusterManager clusterManager;
@@ -159,7 +156,6 @@
this.phasesinfo = new PhasesInfo();
targetResolvers = new ArrayList();
- mustUnderstandHeaderCheckers = new ArrayList();
}
public void addMessageReceiver(String mepURL,
@@ -1015,29 +1011,6 @@
public void addTargetResolver(TargetResolver tr) {
targetResolvers.add(tr);
}
-
- /**
- * Return an iterator over implentations of SOAPMustUnderstandHeaderChecker. These
- * implentations are called during mustUnderstand validation with a HashMap of headers
- * for the actor/role the engine is currently acting in. They can remove headers they
- * understand from the map so those headers, if marked mustUnderstand and not yet processed,
- * do not cause a mustUnderstand fault to be thrown.
- *
- * @return an iterator over SOAPMustUnderstandHeaderChecker implementations. It may be
- * empty if none are configured.
- */
- public Iterator getMustUnderstandHeaderCheckers() {
- return mustUnderstandHeaderCheckers.iterator();
- }
-
- /**
- * Add an implementation of SOAPMustUnderstandHeaderChecker to the list of checkers.
- *
- * @param checker The implementation to be added.
- */
- public void addMustUnderstandHeaderChecker(SOAPMustUnderstandHeaderChecker checker) {
- mustUnderstandHeaderCheckers.add(checker);
- }
public void addLocalPolicyAssertion(QName name) {
this.localPolicyAssertions.add(name);
@@ -1123,4 +1096,3 @@
}
}
}
-
Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/engine/AxisEngine.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/engine/AxisEngine.java?view=diff&rev=557028&r1=557027&r2=557028
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/engine/AxisEngine.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/engine/AxisEngine.java Tue Jul 17 12:00:23 2007
@@ -36,13 +36,11 @@
import org.apache.axis2.util.CallbackReceiver;
import org.apache.axis2.util.LoggingControl;
import org.apache.axis2.util.MessageContextBuilder;
-import org.apache.axis2.util.SOAPMustUnderstandHeaderChecker;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import javax.xml.namespace.QName;
import java.util.ArrayList;
-import java.util.HashMap;
import java.util.Iterator;
/**
@@ -65,10 +63,7 @@
public AxisEngine(ConfigurationContext engineContext) {
}
- public static void checkMustUnderstand(MessageContext msgContext) throws AxisFault {
- if (msgContext == null) {
- return;
- }
+ private static void checkMustUnderstand(MessageContext msgContext) throws AxisFault {
SOAPEnvelope envelope = msgContext.getEnvelope();
if (envelope.getHeader() == null) {
return;
@@ -77,12 +72,9 @@
// Get all the headers targeted to us
Iterator headerBlocks = envelope.getHeader().getHeadersToProcess(null);
- // Have the mustUnderstand Header checkers remove any headers from the list they understand
- Iterator notUnderstoodHeaders = removeUnderstoodHeaders(msgContext, headerBlocks);
-
- while (notUnderstoodHeaders.hasNext()) {
- SOAPHeaderBlock headerBlock = (SOAPHeaderBlock) notUnderstoodHeaders.next();
-
+ while (headerBlocks.hasNext()) {
+ SOAPHeaderBlock headerBlock = (SOAPHeaderBlock) headerBlocks.next();
+
// if this header block has been processed or mustUnderstand isn't
// turned on then its cool
if (headerBlock.isProcessed() || !headerBlock.getMustUnderstand()) {
@@ -97,51 +89,6 @@
}
}
- private static Iterator removeUnderstoodHeaders(MessageContext msgContext, Iterator headerBlocks) {
- Iterator mustUnderstandCheckers = msgContext.getConfigurationContext()
- .getAxisConfiguration().getMustUnderstandHeaderCheckers();
- Iterator notUnderstoodHeaders = null;
-
- if (mustUnderstandCheckers != null && mustUnderstandCheckers.hasNext()) {
- // Create a map of the headers that need to be understood keyed by the header QName
- // to make it easy for the checkers to find the headers they understand, then let
- // each of the checkers remove any headers from the map that they will understand.
- // REVIEW: Can there be duplicate SOAP header QNames? If so, the vaules of the map
- // need to be a linked list or the collection needs to support duplicate keys.
- HashMap notYetUnderstoodHeaders = new HashMap();
- while (headerBlocks.hasNext()) {
- SOAPHeaderBlock headerBlock = (SOAPHeaderBlock) headerBlocks.next();
- notYetUnderstoodHeaders.put(headerBlock.getQName(), headerBlock);
- }
-
- while (mustUnderstandCheckers.hasNext()) {
- SOAPMustUnderstandHeaderChecker checker =
- (SOAPMustUnderstandHeaderChecker) mustUnderstandCheckers.next();
- if (LoggingControl.debugLoggingAllowed && log.isDebugEnabled()) {
- log.debug("Before calling mustUnderstandChecker "
- + checker
- + " list of not-yet-understood headers is: "
- + notYetUnderstoodHeaders);
- }
-
- notYetUnderstoodHeaders =
- checker.removeUnderstoodHeaders(msgContext, notYetUnderstoodHeaders);
-
- if (LoggingControl.debugLoggingAllowed && log.isDebugEnabled()) {
- log.debug("After calling mustUnderstandChecker "
- + checker
- + " list of not-yet-understood headers is: "
- + notYetUnderstoodHeaders);
- }
- }
- notUnderstoodHeaders = notYetUnderstoodHeaders.values().iterator();
- } else {
- // There are no validators, so just return the Iterator paramster unchanged
- notUnderstoodHeaders = headerBlocks;
- }
- return notUnderstoodHeaders;
- }
-
/**
* This method is called to handle any error that occurs at inflow or outflow. But if the
* method is called twice, it implies that sending the error handling has failed, in which case
@@ -185,9 +132,9 @@
InvocationResponse pi = invoke(msgContext, NOT_RESUMING_EXECUTION);
if (pi.equals(InvocationResponse.CONTINUE)) {
- checkMustUnderstand(msgContext);
if (msgContext.isServerSide()) {
// invoke the Message Receivers
+ checkMustUnderstand(msgContext);
MessageReceiver receiver = msgContext.getAxisOperation().getMessageReceiver();
if (receiver == null) {
@@ -330,9 +277,9 @@
//invoking the MR
if (pi.equals(InvocationResponse.CONTINUE)) {
- checkMustUnderstand(msgContext);
if (msgContext.isServerSide()) {
// invoke the Message Receivers
+ checkMustUnderstand(msgContext);
MessageReceiver receiver = msgContext.getAxisOperation().getMessageReceiver();
if (receiver == null) {
throw new AxisFault(Messages.getMessage(
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-cvs-help@ws.apache.org