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 2008/03/08 03:30:44 UTC

svn commit: r634892 - in /webservices/axis2/trunk/java/modules: jaxws-integration/test/org/apache/axis2/jaxws/provider/ jaxws-integration/test/org/apache/axis2/jaxws/provider/soapmsgmu/ jaxws/src/org/apache/axis2/jaxws/message/impl/ jaxws/src/org/apach...

Author: dims
Date: Fri Mar  7 18:30:42 2008
New Revision: 634892

URL: http://svn.apache.org/viewvc?rev=634892&view=rev
Log:
Fix for AXIS2-3558 'XMLDispatch.createMessageFromValue fails to copy mime headers' and  AXIS2-2550 'SoapMessageProviderTests.testProviderSourceXMLOnly broken'

Modified:
    webservices/axis2/trunk/java/modules/jaxws-integration/test/org/apache/axis2/jaxws/provider/SoapMessageProviderTests.java
    webservices/axis2/trunk/java/modules/jaxws-integration/test/org/apache/axis2/jaxws/provider/soapmsgmu/SoapMessageMUProvider.java
    webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/message/impl/MessageFactoryImpl.java
    webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/message/util/MessageUtils.java

Modified: webservices/axis2/trunk/java/modules/jaxws-integration/test/org/apache/axis2/jaxws/provider/SoapMessageProviderTests.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/jaxws-integration/test/org/apache/axis2/jaxws/provider/SoapMessageProviderTests.java?rev=634892&r1=634891&r2=634892&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/jaxws-integration/test/org/apache/axis2/jaxws/provider/SoapMessageProviderTests.java (original)
+++ webservices/axis2/trunk/java/modules/jaxws-integration/test/org/apache/axis2/jaxws/provider/SoapMessageProviderTests.java Fri Mar  7 18:30:42 2008
@@ -94,7 +94,7 @@
     
     // TODO: test disabled due to XMLDispatch.createMessageFromValue failing to copy
     // mime header to request.  Server sample has an assert that checks for it, and fails.
-    public void _testProviderSourceXMLOnly(){
+    public void testProviderSourceXMLOnly(){
         try{       
             // Create the dispatch
             Dispatch<SOAPMessage> dispatch = createDispatch();

Modified: webservices/axis2/trunk/java/modules/jaxws-integration/test/org/apache/axis2/jaxws/provider/soapmsgmu/SoapMessageMUProvider.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/jaxws-integration/test/org/apache/axis2/jaxws/provider/soapmsgmu/SoapMessageMUProvider.java?rev=634892&r1=634891&r2=634892&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/jaxws-integration/test/org/apache/axis2/jaxws/provider/soapmsgmu/SoapMessageMUProvider.java (original)
+++ webservices/axis2/trunk/java/modules/jaxws-integration/test/org/apache/axis2/jaxws/provider/soapmsgmu/SoapMessageMUProvider.java Fri Mar  7 18:30:42 2008
@@ -74,6 +74,7 @@
                             + AttachmentUtil.toString(response));
                 } else {
                     response = request;
+                    response.getMimeHeaders().removeAllHeaders();
                 }
             } else {
                 String badResult = "***ERROR at Service Endpoint: Received message is NULL.";

Modified: webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/message/impl/MessageFactoryImpl.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/message/impl/MessageFactoryImpl.java?rev=634892&r1=634891&r2=634892&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/message/impl/MessageFactoryImpl.java (original)
+++ webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/message/impl/MessageFactoryImpl.java Fri Mar  7 18:30:42 2008
@@ -29,13 +29,17 @@
 import org.apache.axis2.jaxws.message.databinding.SOAPEnvelopeBlock;
 import org.apache.axis2.jaxws.message.factory.MessageFactory;
 import org.apache.axis2.jaxws.message.util.MessageUtils;
+import org.apache.axis2.transport.http.HTTPConstants;
 
 import javax.xml.soap.AttachmentPart;
 import javax.xml.soap.SOAPMessage;
+import javax.xml.soap.MimeHeaders;
+import javax.xml.soap.MimeHeader;
 import javax.xml.stream.XMLStreamException;
 import javax.xml.stream.XMLStreamReader;
 import javax.xml.ws.WebServiceException;
 import java.util.Iterator;
+import java.util.HashMap;
 
 /** MessageFactoryImpl */
 public class MessageFactoryImpl implements MessageFactory {
@@ -86,6 +90,22 @@
         try {
             // Create a Message with an XMLPart from the SOAPEnvelope
             Message m = new MessageImpl(message.getSOAPPart().getEnvelope());
+
+            MimeHeaders mimeHeaders = message.getMimeHeaders();
+            HashMap map = new HashMap();
+            Iterator iterator = mimeHeaders.getAllHeaders();
+            while (iterator.hasNext()) {
+                MimeHeader mimeHeader = (MimeHeader)iterator.next();
+                String key = mimeHeader.getName();
+                String value = mimeHeader.getValue();
+                if(key != null && value != null) {
+                    if(!HTTPConstants.HEADER_CONTENT_TYPE.equalsIgnoreCase(key)) {
+                        map.put(key, value);
+                    }
+                }
+            }
+            m.setMimeHeaders(map);
+
             if (message.countAttachments() > 0) {
                 Iterator it = message.getAttachments();
                 m.setDoingSWA(true);

Modified: webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/message/util/MessageUtils.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/message/util/MessageUtils.java?rev=634892&r1=634891&r2=634892&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/message/util/MessageUtils.java (original)
+++ webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/message/util/MessageUtils.java Fri Mar  7 18:30:42 2008
@@ -200,6 +200,7 @@
         // Put the Headers onto the MessageContext
         Map headerMap = message.getMimeHeaders();
         msgContext.setProperty(MessageContext.TRANSPORT_HEADERS, headerMap);
+        msgContext.setProperty(HTTPConstants.HTTP_HEADERS, headerMap);
 
         if (message.getProtocol() == Protocol.rest) {
             msgContext.setDoingREST(true);



---------------------------------------------------------------------
To unsubscribe, e-mail: axis-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-cvs-help@ws.apache.org