Uploaded image for project: 'CXF'
  1. CXF
  2. CXF-7534

Bus set on jaxws-endpoint is not honored anymore

Attach filesAttach ScreenshotVotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 3.1.11, 3.2.0
    • 3.1.14, 3.2.1
    • Bus, JAX-WS Runtime
    • None
    • Unknown

    Description

      We're setting up a bus for our JAX-WS endpoints with custom features/interceptors to handle some cross-cutting concerns.

      This worked quite well up until cxf-3.1.10. In all following versions, however, the interceptors are not triggered anymore.
      Some debugging revealed that while the endpoint is being initialized with the correct bus, at runtime a different bus instance (one that holds only a single PolicyInInterceptor) is being used.

      Please advise how the cause can be pinned down, I'm a bit lost in the internal complexities of CXF...

      Sample configuration:

          <cxf:bus bus="geco.proton.jaxws.bus">
              <cxf:features>
                  <ref bean="geco.proton.common.httpMetricsFeature" />
                  <ref bean="geco.proton.common.jaxws.soapMessageLoggingFeature" />
                  <ref bean="geco.proton.common.jaxws.konsensSoapHeaderFeature" />
              </cxf:features>
              <cxf:inInterceptors>
                  <ref bean="geco.proton.common.jaxws.endpointDeactivatingInterceptor" />
                  <ref bean="geco.proton.common.jaxws.globalAttachmentCachingInterceptor" />
              </cxf:inInterceptors>
              <cxf:outFaultInterceptors>
                  <ref bean="geco.proton.common.jaxws.globalKonsensAwareFaultInterceptor" />  
              </cxf:outFaultInterceptors>
          </cxf:bus>
      
                  <jaxws:endpoint id="contr.iorouter.v1.ControllerIORouterWS"
                      bus="geco.proton.jaxws.bus"
                      address="${services.intern.iorouter-ev-v1.settings[@endpointAddress]}" implementor="#contr.iorouter.v1.ControllerIORouterWSImpl"
                      wsdlLocation="${services.intern.iorouter-ev-v1.settings[@wsdlLocation]}" endpointName="ns:ControllerEV"
                      serviceName="ns:ControllerEV" xmlns:ns="http://finkonsens.de/geco/controller/ev/v1">
                      <jaxws:properties>
                          <entry key="schema-validation-enabled" value="${services.intern.iorouter-ev-v1.settings[@schemaValidationEnabled]}" />
                          <entry key="mtom-enabled" value="${services.intern.iorouter-ev-v1.settings[@mtomEnabled]}" />
                      </jaxws:properties>
                  </jaxws:endpoint>
      

      Attachments

        Issue Links

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            dkulp Daniel Kulp
            lkoe Lars Ködderitzsch
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment