Mule
  1. Mule
  2. MULE-5570

username-password-filter not compatible with CXF/HTTPS

    Details

    • User impact:
      High
    • Configuration:
      Hide

      <endpoint name="cxfEndpoint" address="https://localhost:1234" exchange-pattern="request-response" >
      <username-password-filter username="#[xpath://soap:Header/username" password="#[xpath://soap:Header/password" />
      <cxf:simple-service serviceClass="my.company.ServiceClass" />
      </endpoint>

      Show
      <endpoint name="cxfEndpoint" address="https://localhost:1234" exchange-pattern="request-response" > <username-password-filter username="#[xpath://soap:Header/username" password="#[xpath://soap:Header/password" /> <cxf:simple-service serviceClass="my.company.ServiceClass" /> </endpoint>
    • Log Output:
      Hide
      ERROR 2011-05-17 14:18:25,348 [[qid-services-2.1.0-SNAPSHOT].httpConnector.receiver.3] org.mule.exception.DefaultServiceExceptionStrategy: Caught exception in Exception Strategy: Failed to evaluate XPath expression: "//soapenv:Envelope/soapenv:Body/ser:getPerson/ser:personI"
      org.mule.api.MuleRuntimeException: Failed to evaluate XPath expression: "//soap:Header/username"
      at org.mule.module.xml.expression.AbstractXPathExpressionEvaluator.evaluate(AbstractXPathExpressionEvaluator.java:140)
      at org.mule.expression.DefaultExpressionManager.evaluate(DefaultExpressionManager.java:274)
      at org.mule.expression.DefaultExpressionManager.evaluate(DefaultExpressionManager.java:210)
      at org.mule.expression.DefaultExpressionManager.evaluate(DefaultExpressionManager.java:170)
      at org.mule.security.UsernamePasswordAuthenticationFilter.getAuthenticationToken(UsernamePasswordAuthenticationFilter.java:91)
      at org.mule.security.UsernamePasswordAuthenticationFilter.authenticateInbound(UsernamePasswordAuthenticationFilter.java:59)
      at org.mule.security.AbstractAuthenticationFilter.authenticate(AbstractAuthenticationFilter.java:70)
      at org.mule.security.AbstractAuthenticationFilter.doFilter(AbstractAuthenticationFilter.java:60)
      at org.mule.processor.SecurityFilterMessageProcessor.process(SecurityFilterMessageProcessor.java:59)
      at org.mule.processor.ExceptionHandlingMessageProcessor.process(ExceptionHandlingMessageProcessor.java:25)
      at org.mule.transport.AbstractMessageReceiver.routeMessage(AbstractMessageReceiver.java:185)
      at org.mule.transport.AbstractMessageReceiver.routeMessage(AbstractMessageReceiver.java:158)
      at org.mule.transport.AbstractMessageReceiver.routeMessage(AbstractMessageReceiver.java:145)
      at org.mule.transport.http.HttpMessageReceiver$HttpWorker.doRequest(HttpMessageReceiver.java:247)
      at org.mule.transport.http.HttpMessageReceiver$HttpWorker.processRequest(HttpMessageReceiver.java:206)
      at org.mule.transport.http.HttpMessageReceiver$HttpWorker.run(HttpMessageReceiver.java:164)
      at org.mule.work.WorkerContext.run(WorkerContext.java:309)
      at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1061)
      at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:575)
      at java.lang.Thread.run(Unknown Source)
      Caused by: java.lang.IllegalArgumentException: XML DOM type "class org.apache.commons.httpclient.ContentLengthInputStream" is currently not supported
      at org.mule.module.xml.expression.XPathExpressionEvaluator.createXPath(XPathExpressionEvaluator.java:50)
      at org.mule.module.xml.expression.AbstractXPathExpressionEvaluator.getXPath(AbstractXPathExpressionEvaluator.java:171)
      at org.mule.module.xml.expression.AbstractXPathExpressionEvaluator.evaluate(AbstractXPathExpressionEvaluator.java:117)
      ... 19 more
      Show
      ERROR 2011-05-17 14:18:25,348 [[qid-services-2.1.0-SNAPSHOT].httpConnector.receiver.3] org.mule.exception.DefaultServiceExceptionStrategy: Caught exception in Exception Strategy: Failed to evaluate XPath expression: "//soapenv:Envelope/soapenv:Body/ser:getPerson/ser:personI" org.mule.api.MuleRuntimeException: Failed to evaluate XPath expression: "//soap:Header/username" at org.mule.module.xml.expression.AbstractXPathExpressionEvaluator.evaluate(AbstractXPathExpressionEvaluator.java:140) at org.mule.expression.DefaultExpressionManager.evaluate(DefaultExpressionManager.java:274) at org.mule.expression.DefaultExpressionManager.evaluate(DefaultExpressionManager.java:210) at org.mule.expression.DefaultExpressionManager.evaluate(DefaultExpressionManager.java:170) at org.mule.security.UsernamePasswordAuthenticationFilter.getAuthenticationToken(UsernamePasswordAuthenticationFilter.java:91) at org.mule.security.UsernamePasswordAuthenticationFilter.authenticateInbound(UsernamePasswordAuthenticationFilter.java:59) at org.mule.security.AbstractAuthenticationFilter.authenticate(AbstractAuthenticationFilter.java:70) at org.mule.security.AbstractAuthenticationFilter.doFilter(AbstractAuthenticationFilter.java:60) at org.mule.processor.SecurityFilterMessageProcessor.process(SecurityFilterMessageProcessor.java:59) at org.mule.processor.ExceptionHandlingMessageProcessor.process(ExceptionHandlingMessageProcessor.java:25) at org.mule.transport.AbstractMessageReceiver.routeMessage(AbstractMessageReceiver.java:185) at org.mule.transport.AbstractMessageReceiver.routeMessage(AbstractMessageReceiver.java:158) at org.mule.transport.AbstractMessageReceiver.routeMessage(AbstractMessageReceiver.java:145) at org.mule.transport.http.HttpMessageReceiver$HttpWorker.doRequest(HttpMessageReceiver.java:247) at org.mule.transport.http.HttpMessageReceiver$HttpWorker.processRequest(HttpMessageReceiver.java:206) at org.mule.transport.http.HttpMessageReceiver$HttpWorker.run(HttpMessageReceiver.java:164) at org.mule.work.WorkerContext.run(WorkerContext.java:309) at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1061) at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:575) at java.lang.Thread.run(Unknown Source) Caused by: java.lang.IllegalArgumentException: XML DOM type "class org.apache.commons.httpclient.ContentLengthInputStream" is currently not supported at org.mule.module.xml.expression.XPathExpressionEvaluator.createXPath(XPathExpressionEvaluator.java:50) at org.mule.module.xml.expression.AbstractXPathExpressionEvaluator.getXPath(AbstractXPathExpressionEvaluator.java:171) at org.mule.module.xml.expression.AbstractXPathExpressionEvaluator.evaluate(AbstractXPathExpressionEvaluator.java:117) ... 19 more
    • Similar Issues:
      MULE-2118Make RequestContext backwards compatible
      MULE-2802Resolve backwards compatability support in 2.x
      MULE-7959Upgrade jbossjta to the latest version which doesn't break backwards compatibility
      MULE-7423Jetty Transport message should be compatible with HTTP one
      MULE-6609Devkit mule backward compatibility
      MULE-76Java 1.5 compatibility
      MULE-3751Remove JDK compatability workarounds
      MULE-6909Dynamic flows are not compatible with Mule Debugger
      MULE-232Let Mule be J2EE 1.3 compatible
      MULE-3065Review all transformers for streaming compatibility

      Description

      username-password-filter doesn't work with CXF/HTTPS, the xpath evaluator can't transform ContentLengthInputStream to a XML document. Somewhere the payload needs to get transformed to a String I guess.

        Activity

        There are no comments yet on this issue.

          People

          • Assignee:
            Unassigned
            Reporter:
            Tomas Blohm
          • Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:

              Development