[ https://issues.apache.org/jira/browse/CAMEL-12575?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Chris Ribble updated CAMEL-12575: --------------------------------- Description: This commit [https://github.com/apache/camel/commit/e4ad40f2eebb68cfde175b171538e26b278f63f6] modified DefaultCxfRsBinding.populateCxfRsResponseFromExchange in a way that causes an NPE on line #116 when a GET request is made with the Content-Type header set. Since Camel copies the request headers into the response, this causes the check for Content-Type to find the header and the code after that assumes that cxfExchange.getOutMessage() is non-null. I can work around this by asking clients not to send the Content-Type header (which is generally meaningless for a GET), but I cannot force them not to send it. I think I can also add header filtering before the endpoint is executed to strip the Content-Type header for GET requests, but ideally DefaultCxfRsBinding.populateCxfRsResponseFromExchange would not call cxfExchange.getOutMessage().putIfAbsent if getOutMessage returns null. was: This commit [https://github.com/apache/camel/commit/e4ad40f2eebb68cfde175b171538e26b278f63f6] modified DefaultCxfRsBinding.populateCxfRsResponseFromExchange in a way that causes an NPE on line #116 when a GET request is made with the Content-Type header set (which is copied into the response). I can work around this by asking clients not to send the Content-Type header (which is generally meaningless for a GET) and/or by adding header filtering before the endpoint is executed, but ideally this code would not call cxfExchange.getOutMessage().putIfAbsent if getOutMessage returns null so that the NPE would not be triggered. > camel-cxfrs: NPE on GET request with Content-Type header > -------------------------------------------------------- > > Key: CAMEL-12575 > URL: https://issues.apache.org/jira/browse/CAMEL-12575 > Project: Camel > Issue Type: Bug > Components: camel-cxfrs > Affects Versions: 2.21.1 > Reporter: Chris Ribble > Priority: Major > > This commit > [https://github.com/apache/camel/commit/e4ad40f2eebb68cfde175b171538e26b278f63f6] > modified DefaultCxfRsBinding.populateCxfRsResponseFromExchange in a way that > causes an NPE on line #116 when a GET request is made with the Content-Type > header set. Since Camel copies the request headers into the response, this > causes the check for Content-Type to find the header and the code after that > assumes that cxfExchange.getOutMessage() is non-null. > I can work around this by asking clients not to send the Content-Type header > (which is generally meaningless for a GET), but I cannot force them not to > send it. I think I can also add header filtering before the endpoint is > executed to strip the Content-Type header for GET requests, but ideally > DefaultCxfRsBinding.populateCxfRsResponseFromExchange would not call > cxfExchange.getOutMessage().putIfAbsent if getOutMessage returns null. -- This message was sent by Atlassian JIRA (v7.6.3#76005)