[ 
http://issues.apache.org/jira/browse/AXIS-2064?page=comments#action_12315604 ] 

John Cherniavsky commented on AXIS-2064:
----------------------------------------

Here's a patch - it's worked great in my environment for a couple of weeks 

Starting at HTTPSender.java:534 using Axis 1.2.1 Final
----
            if (ck1 instanceof String[]) {
                String [] cookies = (String[]) ck1;
                otherHeaders.append(header).append(": ");
                for (int i=0;i<cookies.length;i++)
                {
                    // This is the old code-> addCookie(otherHeaders, header, 
cookies[i]);
                    /* Begin New Code */
                                // Append the cookie
                    otherHeaders.append(cookies[i]);
                    // Append a ';' if not the last cookie
                    if (i < cookies.length -1)
                       otherHeaders.append("; ");
                }
                otherHeaders.append("\r\n");
                    /* End New Code */
            } else {
                addCookie(otherHeaders, header, (String) ck1);
            }
-----

Thanks,
-John Cherniavsky


> The format of multi-cookie in HTTP request head.
> ------------------------------------------------
>
>          Key: AXIS-2064
>          URL: http://issues.apache.org/jira/browse/AXIS-2064
>      Project: Apache Axis
>         Type: Improvement
>   Components: Basic Architecture
>     Versions: 1.2.1
>  Environment: Any platform
>     Reporter: Gerry Gao

>
> In Axis 1.2.1, the HTTPSender and CommonsHTTPSender are sending multiple 
> cookies for the default format (multiple cookie headers):
>     Cookie: a=a1
>     Cookie: b=b2
>     Cookie: c=c3
> or
>     Cookie2: a=a1
>     Cookie2: b=b2
>     Cookie2: c=c3
> According to RFC2965, the multiple cookies should be baked with format 
> (single cookie header):
>     Cookie: a=a1;b=b2;c=c3
> But in fact, most HTTP server supports the multiple cookie headers format. 
> The CommonsHTTPSender employs commons-httpclient which already supports 
> switch between the formats with a parameter like:
>     DefaultHttpParams.getDefaultParams().setBooleanParameter(
>        HttpMethodParams.SINGLE_COOKIE_HEADER,
>        true);
> (Reference: 
> http://htmlunit.sourceforge.net/phpwiki/index.php/SingleCookieHeader)
> But the HTTPSender doesn't support this kind of switch.
> The suggestion is that Axis can add the feature of customizing the cookies' 
> format and provide a parameter for wsdl2java or just provide a public method 
> in Stub to let the user designate whihc cookie format should be used. Then 
> make HTTPSender and CommonsHTTPSender (commons-httpclient) be aware of this 
> parameter.
> Gerry

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira

Reply via email to