Uploaded image for project: 'Red Hat Fuse'
  1. Red Hat Fuse
  2. ENTESB-12871

Fabric Gateway should have same behavior on CXF web services, when handling illegal not encoded characters on URL

XMLWordPrintable

    • 0
    • 0% 0%
    • Todo

      When posting an URL that contains not encoded invalid characters, the answer from the CXF web service, and the Fabric Gateway differs:

      For CXF web service:

      $ curl "http://localhost:8183/cxf/crm/customerservice/customers/123?foo=bar|baz"
      <?xml version="1.0" encoding="UTF-8" standalone="yes"?><Customer xmlns="http://rest.fabric.quickstarts.fabric8.io/"><id>123</id><name>John</name></Customer>

      For Fabric gateway, it hangs
      $ curl "http://localhost:9000/cxf/crm/customerservice/customers/123?foo=bar|baz"

      It has been reported already as a bug, and will be fixed on 6.3.0 R16 ( Please take a look at https://issues.redhat.com/browse/ENTESB-12704 )

      With the fix, it returns a 404 code

      $ curl -v "http://localhost:9000/cxf/crm/customerservice/customers/123?foo=bar|baz"

      • Trying 127.0.0.1:9000...
      • TCP_NODELAY set
      • Connected to localhost (127.0.0.1) port 9000 (#0)
        > GET /cxf/crm/customerservice/customers/123?foo=bar|baz HTTP/1.1
        > Host: localhost:9000
        > User-Agent: curl/7.65.3
        > Accept: /
        >
      • Mark bundle as not supporting multiuse
        < HTTP/1.1 404 Error: Illegal character in query at index 46: /cxf/crm/customerservice/customers/123?foo=bar|baz
        < Content-Length: 0
        <
      • Connection #0 to host localhost left intact

      What customer wants, is for both Fabric Gateway and CXF answer same way.
      He is are aware that invalid unencoded characters on URL, are not allowed [1]

      [1] https://www.ietf.org/rfc/rfc1738.txt

              Unassigned Unassigned
              rhn-support-anarvaez Alfredo Narvaez
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved: