John Poth created CAMEL-11527:
---------------------------------

             Summary: camel-olingo2 uses upper-case UTF-7 as Accept header 
instead of lower case utf-7
                 Key: CAMEL-11527
                 URL: https://issues.apache.org/jira/browse/CAMEL-11527
             Project: Camel
          Issue Type: Bug
          Components: camel-olingo2
    Affects Versions: 2.19.1
            Reporter: John Poth


Not sure if this component is still used/should be deprecated but I have the 
fix locally so might as well :)

The problem is that odata2 services are expecting lower-case 
[ut7|http://grepcode.com/file/repo1.maven.org/maven2/org.apache.olingo/olingo-odata2-core-incubating/1.0.0/org/apache/olingo/odata2/core/commons/ContentType.java#112]
 as Accept header while we provide UTF-7 which produces the following error:

{code}
org.apache.camel.RuntimeCamelException: Error reading EDM: No match for accept 
header
        at 
org.apache.camel.component.olingo2.Olingo2AppWrapper.getEdm(Olingo2AppWrapper.java:93)
 [226:org.apache.camel.camel-olingo2:2.20.0.SNAPSHOT]
        at 
org.apache.camel.component.olingo2.Olingo2Endpoint.interceptProperties(Olingo2Endpoint.java:163)
 [226:org.apache.camel.camel-olingo2:2.20.0.SNAPSHOT]
        at 
org.apache.camel.component.olingo2.Olingo2Producer.process(Olingo2Producer.java:53)
 [226:org.apache.camel.camel-olingo2:2.20.0.SNAPSHOT]
        at 
org.apache.camel.processor.SendProcessor.process(SendProcessor.java:148) 
[57:org.apache.camel.camel-core:2.20.0.SNAPSHOT]
        at 
org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:548)
 [57:org.apache.camel.camel-core:2.20.0.SNAPSHOT]
        at 
org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:201)
 [57:org.apache.camel.camel-core:2.20.0.SNAPSHOT]
        at org.apache.camel.processor.Pipeline.process(Pipeline.java:120) 
[57:org.apache.camel.camel-core:2.20.0.SNAPSHOT]
        at org.apache.camel.processor.Pipeline.process(Pipeline.java:83) 
[57:org.apache.camel.camel-core:2.20.0.SNAPSHOT]
        at 
org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:201)
 [57:org.apache.camel.camel-core:2.20.0.SNAPSHOT]
        at 
org.apache.camel.component.file.GenericFileConsumer.processExchange(GenericFileConsumer.java:451)
 [57:org.apache.camel.camel-core:2.20.0.SNAPSHOT]
        at 
org.apache.camel.component.file.GenericFileConsumer.processBatch(GenericFileConsumer.java:218)
 [57:org.apache.camel.camel-core:2.20.0.SNAPSHOT]
        at 
org.apache.camel.component.file.GenericFileConsumer.poll(GenericFileConsumer.java:182)
 [57:org.apache.camel.camel-core:2.20.0.SNAPSHOT]
        at 
org.apache.camel.impl.ScheduledPollConsumer.doRun(ScheduledPollConsumer.java:174)
 [57:org.apache.camel.camel-core:2.20.0.SNAPSHOT]
        at 
org.apache.camel.impl.ScheduledPollConsumer.run(ScheduledPollConsumer.java:101) 
[57:org.apache.camel.camel-core:2.20.0.SNAPSHOT]
        at 
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?]
        at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308) 
[?:?]
        at 
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180)
 [?:?]
        at 
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294)
 [?:?]
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
[?:?]
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
[?:?]
        at java.lang.Thread.run(Thread.java:745) [?:?]
Caused by: org.apache.olingo.odata2.api.exception.ODataApplicationException: No 
match for accept header
        at 
org.apache.camel.component.olingo2.api.impl.AbstractFutureCallback.checkStatus(AbstractFutureCallback.java:65)
 ~[?:?]
        at 
org.apache.camel.component.olingo2.api.impl.AbstractFutureCallback.completed(AbstractFutureCallback.java:84)
 ~[?:?]
        at 
org.apache.camel.component.olingo2.api.impl.AbstractFutureCallback.completed(AbstractFutureCallback.java:41)
 ~[?:?]
        at 
org.apache.http.concurrent.BasicFuture.completed(BasicFuture.java:119) ~[?:?]
        at 
org.apache.http.impl.nio.client.DefaultClientExchangeHandlerImpl.responseCompleted(DefaultClientExchangeHandlerImpl.java:181)
 ~[?:?]
        at 
org.apache.http.nio.protocol.HttpAsyncRequestExecutor.processResponse(HttpAsyncRequestExecutor.java:437)
 ~[?:?]
        at 
org.apache.http.nio.protocol.HttpAsyncRequestExecutor.inputReady(HttpAsyncRequestExecutor.java:327)
 ~[?:?]
        at 
org.apache.http.impl.nio.DefaultNHttpClientConnection.consumeInput(DefaultNHttpClientConnection.java:265)
 ~[?:?]
        at 
org.apache.http.impl.nio.client.InternalIODispatch.onInputReady(InternalIODispatch.java:81)
 ~[?:?]
        at 
org.apache.http.impl.nio.client.InternalIODispatch.onInputReady(InternalIODispatch.java:39)
 ~[?:?]
        at 
org.apache.http.impl.nio.reactor.AbstractIODispatch.inputReady(AbstractIODispatch.java:114)
 ~[?:?]
        at 
org.apache.http.impl.nio.reactor.BaseIOReactor.readable(BaseIOReactor.java:162) 
~[?:?]
        at 
org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvent(AbstractIOReactor.java:337)
 ~[?:?]
        at 
org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvents(AbstractIOReactor.java:315)
 ~[?:?]
        at 
org.apache.http.impl.nio.reactor.AbstractIOReactor.execute(AbstractIOReactor.java:276)
 ~[?:?]
        at 
org.apache.http.impl.nio.reactor.BaseIOReactor.execute(BaseIOReactor.java:104) 
~[?:?]
        at 
org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor$Worker.run(AbstractMultiworkerIOReactor.java:588)
 ~[?:?]
{code}

I can provide a fix is this component is still used.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to