You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-commits@axis.apache.org by is...@apache.org on 2011/01/20 08:44:00 UTC

svn commit: r1061145 - /axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/handler/TransportHeadersAdapter.java

Author: isurues
Date: Thu Jan 20 07:44:00 2011
New Revision: 1061145

URL: http://svn.apache.org/viewvc?rev=1061145&view=rev
Log:
Fxing https://issues.apache.org/jira/browse/AXIS2-4754. Sending the list of values for the HTTP header as a comma-separated list

Modified:
    axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/handler/TransportHeadersAdapter.java

Modified: axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/handler/TransportHeadersAdapter.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/handler/TransportHeadersAdapter.java?rev=1061145&r1=1061144&r2=1061145&view=diff
==============================================================================
--- axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/handler/TransportHeadersAdapter.java (original)
+++ axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/handler/TransportHeadersAdapter.java Thu Jan 20 07:44:00 2011
@@ -27,6 +27,7 @@ import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 
 import java.util.ArrayList;
+import java.util.Arrays;
 import java.util.Collection;
 import java.util.HashMap;
 import java.util.List;
@@ -141,8 +142,10 @@ public class TransportHeadersAdapter imp
         } else if (o instanceof List) {
             return (List) o;
         } else if (o instanceof String) {
-            List l = new ArrayList();
-            l.add(o);
+            String s = (String)o;
+            String[] values = s.split(", ");
+            List<String> l = new ArrayList<String>();
+            l.addAll(Arrays.asList(values));
             return l;
         } else {
             throw ExceptionFactory.makeWebServiceException(
@@ -160,8 +163,15 @@ public class TransportHeadersAdapter imp
             List l = (List) o;
             if (l.size() == 0) {
                 return null;
-            } else if (l.size() == 1) {
-                return (String) l.get(0);
+            } else {
+                String s = "";
+                for (int i = 0 ; i < l.size() ; i++) {
+                    s += l.get(i);
+                    if (i != l.size() - 1) {
+                        s += ", ";
+                    }
+                }
+                return s;
             }
         }
         throw ExceptionFactory.makeWebServiceException(
@@ -182,7 +192,6 @@ public class TransportHeadersAdapter imp
     }
 
     public boolean containsValue(Object value) {
-        // TODO Should walk all of the values to do this correctly.
         String valueString = convertToString(value);
         return getDelegateMap(mc).containsValue(valueString);
     }