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

WS-A RelatesTo headers missing in MAPCodec::getUnderstoodHeaders()

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 3.2.7, 3.3.0
    • WS-* Components
    • None
    • Unknown

    Description

      The getUnderstoodHeaders() methods of MAPCodec returns a static list of headers that is created when loading org.apache.cxf.ws.addressing.soap.VersionTransformer. Such list does not include the RelatesTo headers.

      This issue is actually exposed by having recently applied the fix https://github.com/apache/cxf/commit/a63a36bc4e151ab9c555304fab383a4624191f51

      An exception as below ends up being logged in case of required ws-addressing and RelatesTo headers being used:

      2018-10-10 23:16:22,252 WARNING [org.apache.cxf.phase.PhaseInterceptorChain] (default-workqueue-1) Interceptor for {http://schemas.arjuna.com/ws/2005/10/wsarjtx}TerminationParticipantService#{http://schemas.arjuna.com/ws/2005/10/wsarjtx}FaultOperation has thrown exception, unwinding now: org.apache.cxf.binding.soap.SoapFault: MustUnderstand headers: [{http://www.w3.org/2005/08/addressing}RelatesTo] are not understood.
              at org.apache.cxf.impl//org.apache.cxf.binding.soap.interceptor.MustUnderstandInterceptor$MustUnderstandEndingInterceptor.handleMessage(MustUnderstandInterceptor.java:282)
              at org.apache.cxf.impl//org.apache.cxf.binding.soap.interceptor.MustUnderstandInterceptor$MustUnderstandEndingInterceptor.handleMessage(MustUnderstandInterceptor.java:259)
              at org.apache.cxf@3.2.6//org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:308)
              at org.apache.cxf@3.2.6//org.apache.cxf.phase.PhaseInterceptorChain.resume(PhaseInterceptorChain.java:278)
              at org.apache.cxf.impl//org.apache.cxf.ws.addressing.impl.InternalContextUtils$1.run(InternalContextUtils.java:319)
              at org.apache.cxf@3.2.6//org.apache.cxf.workqueue.AutomaticWorkQueueImpl$3.run(AutomaticWorkQueueImpl.java:421)
              at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
              at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
              at org.apache.cxf@3.2.6//org.apache.cxf.workqueue.AutomaticWorkQueueImpl$AWQThreadFactory$1.run(AutomaticWorkQueueImpl.java:346)
              at java.base/java.lang.Thread.run(Thread.java:834)

      Attachments

        Issue Links

          Activity

            People

              asoldano Alessio Soldano
              asoldano Alessio Soldano
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: