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

Unable to append forward-slash(/) to jaxrs url using gateway-http

    Details

    • Type: Bug
    • Status: Done
    • Priority: Major
    • Resolution: Done
    • Affects Version/s: fuse-6.3-R16-GA
    • Fix Version/s: fuse-6.3-R17-GA
    • Component/s: CXF, Fabric8 v1, Karaf
    • Labels:
      None
    • Steps to Reproduce:
      • Apply gateway-http on fabric set up
      • Deploy one cxf application and append forward slash at the end
    • Workaround Description:
      Hide

      One workaround I got and suggested to cu was to use endpoint with "///" it suffice there requirement but I know it's not a good solution

      Show
      One workaround I got and suggested to cu was to use endpoint with "///" it suffice there requirement but I know it's not a good solution
    • QE Test Coverage:
      +

      Description

      IHAC,

      They were using gateway-http on Fuse 6.3 R10 and upgrading to R14,
      Earlier they used to have the uri like this with forward slash

      CamelHttpUri=/commercial-mnp/currency/v1/exchange-rates/EUR/

      But after upgrading to R14 they are not getting the forward slash appended at the end which causes them some trouble

      I investigated and found that ENTESB-6686 was raised and fixed in R4 to prevent any forward slash at the end and new addMissingTrailingSlashes was introduced in pid io.fabric8.gateway.http

      Following code was added [1] to fix ENTESB-6686

      if(addMissingTrailingSlashes) {
                  uri2 = normalizeUri(uri);
              } 
      

      Later on, it was observed some issue related to this param and raised ENTESB-10717, which is fixed in R13 [2]

      It was added

      if(addMissingTrailingSlashes) {
                  uri2 = normalizeUri(uri);
              } 
      

      and it was removed

      if (remaining.endsWith("/")) {
                          //ensure the requst URI not end with "/", for example not wrongly index.jsp/
                          //or index.jsp/?query string
                          remaining = remaining.substring(0, remaining.length() - 1);
                      }
                      if (remaining.contains("/?")) {
                          remaining = remaining.replace("/?", "?");
                      }
      

      I suggested cu to use addMissingTrailingSlashes=true but it didn't help as it was removed in R13,

      Can we have any workaround to get forward slash at the end

      One workaround I got and suggested to cu was to use endpoint with "///" it suffice there requirement but I know it's not a good solution

        Gliffy Diagrams

          Attachments

            Issue Links

              Activity

                People

                • Assignee:
                  ffang Freeman(Yue) Fang
                  Reporter:
                  chardahe Chandrakant Hardahe
                  Tester:
                  Vratislav Hais
                • Votes:
                  1 Vote for this issue
                  Watchers:
                  7 Start watching this issue

                  Dates

                  • Created:
                    Updated:
                    Resolved: