Uploaded image for project: 'ServiceMix'
  1. ServiceMix
  2. SM-1900

servicemix-cxf-bc componet can't locate services

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Won't Fix
    • 3.3.1
    • None
    • servicemix-cxf-bc
    • None

    Description

      The servicemix-cxf-bc doesn't work inside a Tomcat server.

      The problem is that the service destinations aren't found by the destination factory.
      I think this problem isn't Tomcat specific. It should occur if servicemix is deployed as a war inside some application server.
      I would suggest the following fix:

      1.) Implement a ServletTransportFactory (see attachment 1)
      2.) Register this ServletTransportFactory in the default cxf.xml (classpath root, see attachment 2)

      It's important to note that one needs to configure the CXF default bus with org.apache.servicemix.web.cxf.CXFManagedServlet.
      If one uses the spring based CXF configuration method, the servicemix-cxf-bc and the servlet will have different application contexts and thus it won't work.

      Kind regrades

      Christian

      Attachments

        1. TomcatDestinationFactory.java
          0.7 kB
          Christian Connert
        2. cxf.xml
          2 kB
          Christian Connert

        Activity

          People

            ffang Freeman Yue Fang
            mellowsnow Christian Connert
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: