thnx,  so no workaround until 2.4 :(
attilav

willem.jiang wrote:
> 
> Oh, I found the key, it's a bug of camel-http.
> Current message header is using CaseInsensitiveMap[1] to store the 
> header key and value.
> 
> And the HttpProducer should use the map.entrySet() to access the value 
> instead of use map.getKeySet() to go through the headers.
> 
> I already create a JIRA[2] for it.
> 
> [1]https://svn.apache.org/repos/asf/camel/trunk/camel-core/src/main/java/org/apache/camel/util/CaseInsensitiveMap.java
> 
> [2]https://issues.apache.org/activemq/browse/CAMEL-2743
> 
> Willem
> 
> 
> attilav wrote:
>> Some more info I found:
>> 
>> After the http request the camel exchange headers
>> (exchange.getIn().getHeaders()) seem to be OK, that is, the headers are
>> copied correctly from the in message, and the http response headers are
>> added too.
>> 
>> 2010-05-20 13:29:46,502 | INFO  | xINH
>> VVVVVVVVVVVVVVV{CamelHttpMethod=POST,
>> myHeaDer=akarmi head, Content-Length=1003, xxxSOAPAction=sakarmi head,
>> Expires=0, Cache-Control=private, pre-check=0, post-check=0, max-age=0,
>> Pragma=no-cache, Server=MX/WEBSERVICE 3.X, Content-Type=text/xml;
>> charset=UTF-8, CamelHttpResponseCode=500,
>> SOAPAction="http://xxx.com/interfaces/ticket";, Connection=close}
>> 
>> br,
>> attila
>> 
>> 
>> attilav wrote:
>>> Hi Willem,
>>>
>>> I'm using camel 2.2.0 - within servicemix 3.3.
>>>
>>> thanks for the quick answer,
>>> attilav
>>>
>>>
>>> willem.jiang wrote:
>>>> Hi
>>>>
>>>> Which Camel version are you using?
>>>> I just checked the camel trunk code, there is no code which turn the 
>>>> headers into lower case.
>>>>
>>>> Willem
>>>>
>>>> attilav wrote:
>>>>> Hi everyone,
>>>>>
>>>>> I'm trying to use the camel-http to send a soap request, however the
>>>>> camel
>>>>> exchange headers get converted to lowercase during the http post. Is
>>>>> this a
>>>>> feature, or bug? Is there a way around it?
>>>>>
>>>>> My setup is something like this:
>>>>>
>>>>> from("activemq:queue:tempque")
>>>>>       .setHeader(Exchange.HTTP_METHOD,
>>>>> constant(org.apache.camel.component.http.HttpMethods.POST))
>>>>>       .setHeader("SOAPAction",
>>>>> constant("http://xxx.com/interfaces/ticket";))
>>>>>       .setHeader("Content-Type", constant("text/xml; charset=utf-8"))
>>>>>       .setHeader("myHeaDer", constant("akarmi head"))
>>>>>       .setHeader("xxxSOAPAction", constant("sakarmi head"))
>>>>>       .to("http://iface.intra:8115/ticket";)
>>>>>
>>>>> what actually gets sent over the wire is:
>>>>>
>>>>> POST /fault_ticket HTTP/1.1
>>>>> myheader: akarmi head
>>>>> soapaction: "http://xxx.com/interfaces/ticket";
>>>>> xxxsoapaction: sakarmi head
>>>>> User-Agent: Jakarta Commons-HttpClient/3.1
>>>>> Host: iface.nrps.telekom.intra:8115
>>>>> Content-Length: 1056
>>>>> Content-Type: text/xml; charset=utf-8
>>>>>
>>>>> <soap:Envelope  ....
>>>>>
>>>>> The remote side is case sensitive on http headers, and complies about
>>>>> an
>>>>> invalid soap action.
>>>>>
>>>>> Thanks
>>>>> attilav
>>>>
>>>>
>>>
>> 
> 
> 
> 

-- 
View this message in context: 
http://old.nabble.com/camel-http-converts-headers-to-lower-case-tp28620717p28621640.html
Sent from the Camel - Users mailing list archive at Nabble.com.

Reply via email to