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

Unable to configure CXF StAX properties on a per-endpoint/client basis if a JAX-WS handler is configured

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 3.0.4
    • Component/s: Soap Binding
    • Labels:
      None
    • Estimated Complexity:
      Unknown

      Description

      Caused by: org.apache.cxf.staxutils.DepthExceededStaxException: reach the innerElementCountThreshold:50000
          at org.apache.cxf.staxutils.StaxUtils.copy(StaxUtils.java:726)
          at org.apache.cxf.binding.soap.saaj.SAAJInInterceptor.handleMessage(SAAJInInterceptor.java:223)
          at org.apache.cxf.jaxws.handler.soap.SOAPMessageContextImpl.getMessage(SOAPMessageContextImpl.java:78)
          at org.apache.cxf.jaxws.handler.soap.SOAPHandlerInterceptor.createProtocolMessageContext(SOAPHandlerInterceptor.java:257)
          at org.apache.cxf.jaxws.handler.soap.SOAPHandlerInterceptor.handleMessageInternal(SOAPHandlerInterceptor.java:161)
          at org.apache.cxf.jaxws.handler.soap.SOAPHandlerInterceptor.handleMessage(SOAPHandlerInterceptor.java:124)
          at org.apache.cxf.jaxws.handler.soap.SOAPHandlerInterceptor.handleMessage(SOAPHandlerInterceptor.java:71)
          at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:272)
          at org.apache.cxf.endpoint.ClientImpl.onMessage(ClientImpl.java:845)
          at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponseInternal(HTTPConduit.java:1624)
      

      This happens because the SAAJInInterceptor invokes StaxUtils.copy() with the value of the fourth argument as true, which means StaxUtils uses its static properties to check innerElementLevelThreshold and innerElementCountThreshold. If the XMLStreamReader passed in to the method has custom values for these properties, they are ignored.

      I'm not sure if this behavior is intentional or not, but if it's not, then it would be nice to allow the properties on the XMLStreamReader to take precedence.

        Attachments

          Activity

            People

            • Assignee:
              dkulp Daniel Kulp
              Reporter:
              klape Kyle Lape
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: