You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-dev@axis.apache.org by "Michael Chen (JIRA)" <ax...@ws.apache.org> on 2008/10/14 20:33:44 UTC

[jira] Created: (AXISCPP-1059) HTTPTransport generates duplicate "Authentication: " headers

HTTPTransport generates duplicate "Authentication: " headers
------------------------------------------------------------

                 Key: AXISCPP-1059
                 URL: https://issues.apache.org/jira/browse/AXISCPP-1059
             Project: Axis-C++
          Issue Type: Bug
          Components: Transport (axis3)
    Affects Versions: current (nightly)
         Environment: Any
            Reporter: Michael Chen


Source file "axis/trunk/c/src/transport/axis3/HTTPTransport.cpp", line 360.
When generateHTTPHeaders() calls setTransportProperty("Authorization", ...), the later does NOT replace existing "Authentication: " header but add another one.  My application uses the same stub to call the same service repeatedly.  This resulted in increasingly more and more duplicate "Authentication: " header being sent to the service.  After a while, the service refuses the request.

The common practice is that "set" replaces duplicate key/value pairs, while "add" implies the acceptance of duplicate keys.  setTransportProperty(const char*, const char*) only remove duplicates of 3 know headers, "Connection", "Content-Length" and "SOAPAction".  This is a design flaw.  There should be two sibling member functions:

setTransportProperty(const char*, const char*)
addTransportProperty(const char*, const char*)


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


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