1 Reply Latest reply on Jul 30, 2014 8:21 PM by schellinger

    NoTypeConversionAvailableException on convertBodyTo

    schellinger

      I am trying to create a web service proxy in our Fuse 6.1 ESB.  I am using Camel Blueprint.  The WSDL we are using is the exact same WSDL of the real web service.  We use wsdl2java in our POM to generate the stubs/skeletons/POJOs.  So when our web service CXF endpoint gets called, we immediately call convertBodyTo to convert the incoming SOAP request into a POJO generated by wsdl2java.  I get the following call stack in the Fuse logs:

       

      Caused by: [org.apache.camel.NoTypeConversionAvailableException - No type converter available to convert from type: org.apache.camel.component.cxf.CxfPayload to the required type: com.hp.exstream.cc.dc.soap.GetDocument with value org.apache.camel.component.cxf.CxfPayload@2d97da42]

       

      I am attaching our WSDL, Camel context (edited to remove some comments and references to placeholders), POM, and SOAP request (from SoapUI).  I'm also attaching the full call stack caused by this error.  The line that causes this issue is on line 40 of the camel context.  We have been struggling with this for 2 days and still can't figure out what is going wrong.  Let me know if you see what we are doing wrong.  Thanks.

       

      Shawn

        • 1. Re: NoTypeConversionAvailableException on convertBodyTo
          schellinger

          Well, as I had kind of thought early on with this issue, I think it was caused by the generated POJO classes from the WSDL not having the XmlRootElement annotation. I found the way to force this during wsdl2java (putting <xjc:simple /> in the bindings.xml file). Once I did that, convertBodyTo started working!!  Sorry for the unnecessary post.  Hopefully someone else having this issue will find my resolution at some point in the future!