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

Fabric gateway hangs, when receiving URL with invalid characters

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Critical
    • Resolution: Done
    • Affects Version/s: jboss-fuse-6.3
    • Fix Version/s: None
    • Component/s: Fabric8 v1
    • Labels:
      None
    • Steps to Reproduce:
      Hide

      Steps to reproduce from scratch:

      A) Unzip last Fuse 6.3.0 media 'jboss-fuse-karaf-6.3.0.redhat-424.zip'
      B) Install quickstart

      1. cd $FUSE_HOME
      2. cd quickstarts/cxf/rest
      3. mvn install

      C) Set up a fresh instance of jboss fuse 6.3.0 with both an http gateway container and another separate container running this cxf quickstart bundle

      1. Uncomment 'admin' user from 'etc/users.properties' (not really needed I guess)
      2. Start via 'bin/fuse'
      3. fabric:create --wait-for-provisioning --manual-ip localhost --resolver manualip --zookeeper-password admin
      4. container-create-child --profile gateway-http root gateway
      5. container-create-child --profile feature-cxf root test
      7. container-connect test
      8. osgi:install -s mvn:org.jboss.quickstarts.fuse/cxf-rest/6.3.0.redhat-424

      D) Invoke web service with illegal parameters

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

      The request to the gateway url results in exceptions on the gateway container and the request, from the perspective of the client, hangs indefinitely.

      Check gateway container logs under 'instances/gateway/data/log/fuse.log'.

      Show
      Steps to reproduce from scratch: A) Unzip last Fuse 6.3.0 media 'jboss-fuse-karaf-6.3.0.redhat-424.zip' B) Install quickstart 1. cd $FUSE_HOME 2. cd quickstarts/cxf/rest 3. mvn install C) Set up a fresh instance of jboss fuse 6.3.0 with both an http gateway container and another separate container running this cxf quickstart bundle 1. Uncomment 'admin' user from 'etc/users.properties' (not really needed I guess) 2. Start via 'bin/fuse' 3. fabric:create --wait-for-provisioning --manual-ip localhost --resolver manualip --zookeeper-password admin 4. container-create-child --profile gateway-http root gateway 5. container-create-child --profile feature-cxf root test 7. container-connect test 8. osgi:install -s mvn:org.jboss.quickstarts.fuse/cxf-rest/6.3.0.redhat-424 D) Invoke web service with illegal parameters $ curl "http://localhost:9000/cxf/crm/customerservice/customers/123?foo=bar|baz" The request to the gateway url results in exceptions on the gateway container and the request, from the perspective of the client, hangs indefinitely. Check gateway container logs under 'instances/gateway/data/log/fuse.log'.
    • QE Test Coverage:
      +

      Description

      When sending an URL with some invalid characters to a fabric gateway, the gateway container logs a NullPointerException, and the client hangs

      Please see attached "NPE-gateway.txt" file, for the full exception stack trace

      If the same URL is sent directly to the container that host the web service presented by the gateway, the client gets a response

      Sample client and URL used:

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

      Probably the same behavior could happen with other special characters

        Gliffy Diagrams

          Attachments

            Issue Links

              Activity

                People

                • Assignee:
                  ffang Freeman(Yue) Fang
                  Reporter:
                  rhn-support-anarvaez Alfredo Narvaez
                  Tester:
                  Vratislav Hais
                • Votes:
                  0 Vote for this issue
                  Watchers:
                  4 Start watching this issue

                  Dates

                  • Created:
                    Updated:
                    Resolved: