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); }