title: Camel bean binding tries to convert the body to Exchange
body: <p>I have a simple route which looks like this:</p>
  
  <pre><code>&lt;route handleFault="true" streamCache="true" id="routeA"&gt;
      &lt;from uri="cxfrs://bean://simpleCxf" /&gt;
      &lt;log message="The message body contains ${body}"/&gt;
      &lt;to uri="direct-vm:RouteB" /&gt;
  &lt;/route&gt;
  
  &lt;route handleFault="true" streamCache="true" id="routeB"&gt;
      &lt;from uri="direct-vm:RouteB" /&gt;
      &lt;bean ref="requestValidator" method="validateRequest" /&gt;
      &lt;log message="The input message ${body}" /&gt;
      &lt;bean ref="dbClient" method="queryDatabase" /&gt;
  &lt;/route&gt;
  </code></pre>
  
  <p>the cxf configuration is also pretty simple:</p>
  
  <pre><code>&lt;cxf:rsServer id="simpleCxf" address="/test"
      loggingFeatureEnabled="true"
      serviceClass="com.gogol.test.TestResource"&gt;
  &lt;/cxf:rsServer&gt;
  </code></pre>
  
  <p>This simple route fails with the below exception</p>
  
  <pre><code>No type converter available to convert from type: org.apache.cxf.message.MessageContentsList to the required type: org.apache.camel.Exchange with value [com.gogol.test.resource.SimpleObject@773736ca]
  </code></pre>
  
  <p>This is the message history which suggests that it is failing at the point <code>&lt;bean ref="requestValidator" method="validateRequest" /&gt;</code></p>
  
  <pre><code>Message History
  ---------------------------------------------------------------------------------------------------------------------------------------
  RouteId ProcessorId                   Processor                      Elapsed (ms)
  [routeA] [routeA] [direct-vm://routeA                                ] [6]
  [routeB] [log12 ] [log                                               ] [2]
  [routeB] [to9   ] [direct-vm:routeA                                  ] [4]
  [routeA] [bean26] [bean[ref:requestValidator method: validateRequest]] [2]
  </code></pre>
  
  <p>I think the issue is that Camel is trying to convert the body generated by cxf to an Exchange object. Because the requestValidator class has a method which has a signature of:</p>
  
  <pre><code>public void validateRequest(Exchange exchange) thows SomeException.
  </code></pre>
  
  <p>But ideally the message generated by cxf should be set as a body inside Exchange. Am I correct, if not then what could be the reason of the above exception?</p>
  
  <p>EDIT:</p>
  
  <p>I am using CXF version 3.0.4.redhat-621084
  and CAMEL version 2.15.1.redhat-621084</p>
  
  <pre><code>{Caused by: org.apache.camel.InvalidPayloadException: No body available of type: org.apache.camel.Exchange but has value: [com.gogol.schema.TestResourcec@6b651b67] of type: org.apache.cxf.message.MessageContentsList on: Message: [com.gogol.schema.TestResourcec@6b651b67]. Caused by: No type converter available to convert from type: org.apache.cxf.message.MessageContentsList to the required type: org.apache.camel.Exchange with value [com.gogol.schema.TestResourcec@6b651b67]. Exchange[Message: [com.gogol.schema.TestResourcec@6b651b67]]. Caused by: [org.apache.camel.NoTypeConversionAvailableException - No type converter available to convert from type: org.apache.cxf.message.MessageContentsList to the required type: org.apache.camel.Exchange with value [com.gogol.schema.TestResourcec@6b651b67]]
      at org.apache.camel.impl.MessageSupport.getMandatoryBody(MessageSupport.java:101)[198:org.apache.camel.camel-core:2.15.1.redhat-621084]
      at org.apache.camel.builder.ExpressionBuilder$42.evaluate(ExpressionBuilder.java:1037)[198:org.apache.camel.camel-core:2.15.1.redhat-621084]
      ... 68 more
  Caused by: org.apache.camel.NoTypeConversionAvailableException: No type converter available to convert from type: org.apache.cxf.message.MessageContentsList to the required type: org.apache.camel.Exchange with value [com.gogol.schema.TestResourcec@6b651b67]
      at org.apache.camel.impl.converter.BaseTypeConverterRegistry.mandatoryConvertTo(BaseTypeConverterRegistry.java:177)[198:org.apache.camel.camel-core:2.15.1.redhat-621084]
      at org.apache.camel.core.osgi.OsgiTypeConverter.mandatoryConvertTo(OsgiTypeConverter.java:122)[203:org.apache.camel.camel-spring:2.15.1.redhat-621084]
      at org.apache.camel.impl.MessageSupport.getMandatoryBody(MessageSupport.java:99)[198:org.apache.camel.camel-core:2.15.1.redhat-621084]
          ... 69 more}
  </code></pre>