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 "Anjana Fernando (JIRA)" <ji...@apache.org> on 2013/01/20 08:42:13 UTC

[jira] [Updated] (AXIS2-5477) Incorrect Behavior in HTTP Request Header Retrieval from MessageContext

     [ https://issues.apache.org/jira/browse/AXIS2-5477?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Anjana Fernando updated AXIS2-5477:
-----------------------------------

    Attachment: TransportHeaders.java

I've re-written the class "org.apache.axis2.transport.http.TransportHeaders" to fix the above issue, and is attached here.
                
> Incorrect Behavior in HTTP Request Header Retrieval from MessageContext
> -----------------------------------------------------------------------
>
>                 Key: AXIS2-5477
>                 URL: https://issues.apache.org/jira/browse/AXIS2-5477
>             Project: Axis2
>          Issue Type: Bug
>          Components: transports
>    Affects Versions: 1.6.2
>            Reporter: Anjana Fernando
>         Attachments: TransportHeaders.java
>
>
> When getting HTTP transport header map from the message context, the case in-sensitiveness is not retained. Basically, the class org.apache.axis2.transport.http.TransportHeaders has an incorrect behavior, where it loads all the headers into an internal Map in the init() method and subsequent calls to get() will be incorrect, specially where in Tomcat, when asking for the list of header names, it returns everything in lower case, so if a user ask for a header like "Host", it will not work, because TransportHeaders class internal map will have an entry called "host", if the init() is not called, this will work, because it will directly call request.getHeader() .. which would work for any combination, because that operation is not case sensitive. 
> The above init() method of TransportHeaders class is called for operations like add/size/remove operations, so if any such method method is called, the get() operations after that will most probably be incorrect. 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

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