Uploaded image for project: 'Camel'
  1. Camel
  2. CAMEL-7524

CxfProducer created from wsdl detected as provider

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 2.13.1
    • 2.13.2, 2.14.0
    • camel-cxf
    • None
    • Patch Available
    • Unknown

    Description

      In custom bus extension following code used to detect web provider:

      JaxWsServiceFactoryBean factory =...;
                      JaxWsImplementorInfo jaxWsImplementorInfo = jaxwsfactory.getJaxWsImplementorInfo();
                      isProvider = null != jaxWsImplementorInfo && jaxWsImplementorInfo.isWebServiceProvider();
      

      But org.apache.camel.component.cxf.WSDLServiceFactoryBean used setServiceClass(Provider.class); which cause

      org.apache.cxf.jaxws.support.JaxWsImplementorInfo.isWebServiceProvider() {
              return Provider.class.isAssignableFrom(implementorClass);
          }
      

      return true always.
      I can't set ServiceClass for CxfEndpoint because another case will executed.
      I propose to override service class for this case

      Attachments

        1. CxfEndpoint.patch
          0.5 kB
          Alexey Markevich

        Activity

          People

            njiang Willem Jiang
            amarkevich Alexey Markevich
            Votes:
            1 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: