Uploaded image for project: 'Qpid'
  1. Qpid
  2. QPID-7682

[Java Broker] CloudFoundry group provider plugin reports 404 errors from the service as 500 errors

    Details

      Description

      If the underlying CloudFoundry service reports 404, the Broker returns a 500 error back to the Browser. Qpid should be handling this condition better.

      2017-02-24 10:27:04,942 INFO  [HttpManagement-HTTPS-291] (o.a.q.s.m.p.f.ExceptionHandlingFilter) - Exception in servlet '/' : Connection to CloudFoundryDashboardManagementEndpoint 'https://xxxxxxxxxxxxxxxxxxxxxxxx/v2/service_instances/yyyyyyyyyyyyyyyyyyy/permissions' failed
      2017-02-24 10:27:04,942 WARN  [HttpManagement-HTTPS-291] (o.e.j.s.ServletHandler) - /
      org.apache.qpid.server.util.ConnectionScopedRuntimeException: Connection to CloudFoundryDashboardManagementEndpoint 'https://xxxxxxxxxxxxxxxxxxxxxxxx/v2/service_instances/yyyyyyyyyyyyyyyyyyy/ permissions' failed
                      at org.apache.qpid.server.security.group.cloudfoundry.CloudFoundryDashboardManagementGroupProviderImpl.mayManageServiceInstance(CloudFoundryDashboardManagementGroupProviderImpl.java:248) ~[qpid-broker-core-6.1.1.jar:6.1.1]
                      at org.apache.qpid.server.security.group.cloudfoundry.CloudFoundryDashboardManagementGroupProviderImpl.getGroupPrincipalsForUser(CloudFoundryDashboardManagementGroupProviderImpl.java:175) ~[qpid-broker-core-6.1.1.jar:6.1.1]
                      at org.apache.qpid.server.security.SubjectCreator.getGroupPrincipals(SubjectCreator.java:164) ~[qpid-broker-core-6.1.1.jar:6.1.1]
                      at org.apache.qpid.server.security.SubjectCreator.createResultWithGroups(SubjectCreator.java:133) ~[qpid-broker-core-6.1.1.jar:6.1.1]
                      at org.apache.qpid.server.management.plugin.auth.OAuth2InteractiveAuthenticator$2.createSubject(OAuth2InteractiveAuthenticator.java:193) ~[qpid-broker-plugins-management-http-6.1.1.jar:6.1.1]
                      at org.apache.qpid.server.management.plugin.auth.OAuth2InteractiveAuthenticator$2.handleAuthentication(OAuth2InteractiveAuthenticator.java:168) ~[qpid-broker-plugins-management-http-6.1.1.jar:6.1.1]
                      at org.apache.qpid.server.management.plugin.filter.RedirectingAuthorisationFilter.doFilter(RedirectingAuthorisationFilter.java:101) ~[qpid-broker-plugins-management-http-6.1.1.jar:6.1.1]
                      at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1467) ~[jetty-servlet-8.1.17.v20150415.jar:8.1.17.v20150415]
                      at org.apache.qpid.server.management.plugin.filter.ForbiddingTraceFilter.doFilter(ForbiddingTraceFilter.java:65) ~[qpid-broker-plugins-management-http-6.1.1.jar:6.1.1]
                      at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1467) ~[jetty-servlet-8.1.17.v20150415.jar:8.1.17.v20150415]
                      at org.eclipse.jetty.servlets.CrossOriginFilter.handle(CrossOriginFilter.java:247) ~[jetty-servlets-8.1.17.v20150415.jar:8.1.17.v20150415]
                      at org.eclipse.jetty.servlets.CrossOriginFilter.doFilter(CrossOriginFilter.java:210) ~[jetty-servlets-8.1.17.v20150415.jar:8.1.17.v20150415]
                      at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1467) ~[jetty-servlet-8.1.17.v20150415.jar:8.1.17.v20150415]
                      at org.apache.qpid.server.management.plugin.filter.ExceptionHandlingFilter.doFilter(ExceptionHandlingFilter.java:56) ~[qpid-broker-plugins-management-http-6.1.1.jar:6.1.1]
                      at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1467) ~[jetty-servlet-8.1.17.v20150415.jar:8.1.17.v20150415]
                      at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:501) [jetty-servlet-8.1.17.v20150415.jar:8.1.17.v20150415]
                      at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:229) [jetty-server-8.1.17.v20150415.jar:8.1.17.v20150415]
                      at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1086) [jetty-server-8.1.17.v20150415.jar:8.1.17.v20150415]
                      at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:429) [jetty-servlet-8.1.17.v20150415.jar:8.1.17.v20150415]
                      at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193) [jetty-server-8.1.17.v20150415.jar:8.1.17.v20150415]
                      at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1020) [jetty-server-8.1.17.v20150415.jar:8.1.17.v20150415]
                      at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135) [jetty-server-8.1.17.v20150415.jar:8.1.17.v20150415]
                      at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116) [jetty-server-8.1.17.v20150415.jar:8.1.17.v20150415]
                      at org.eclipse.jetty.server.Server.handle(Server.java:370) [jetty-server-8.1.17.v20150415.jar:8.1.17.v20150415]
                      at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:494) [jetty-server-8.1.17.v20150415.jar:8.1.17.v20150415]
                      at org.eclipse.jetty.server.AbstractHttpConnection.headerComplete(AbstractHttpConnection.java:971) [jetty-server-8.1.17.v20150415.jar:8.1.17.v20150415]
                      at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.headerComplete(AbstractHttpConnection.java:1033) [jetty-server-8.1.17.v20150415.jar:8.1.17.v20150415]
                      at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:644) [jetty-http-8.1.17.v20150415.jar:8.1.17.v20150415]
                      at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:235) [jetty-http-8.1.17.v20150415.jar:8.1.17.v20150415]
                      at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82) [jetty-server-8.1.17.v20150415.jar:8.1.17.v20150415]
                      at org.eclipse.jetty.io.nio.SslConnection.handle(SslConnection.java:196) [jetty-io-8.1.17.v20150415.jar:8.1.17.v20150415]
                      at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:696) [jetty-io-8.1.17.v20150415.jar:8.1.17.v20150415]
                      at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:53) [jetty-io-8.1.17.v20150415.jar:8.1.17.v20150415]
                      at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608) [jetty-util-8.1.17.v20150415.jar:8.1.17.v20150415]
                      at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543) [jetty-util-8.1.17.v20150415.jar:8.1.17.v20150415]
                      at java.lang.Thread.run(Thread.java:745) [na:1.8.0_92]
      Caused by: java.io.FileNotFoundException: https://xxxxxxxxxxxxxxxxxxxxxxxx/v2/service_instances/yyyyyyyyyyyyyyyyyyy/ permissions
                      at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1836) ~[na:1.8.0_92]
                      at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1441) ~[na:1.8.0_92]
                      at sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(HttpsURLConnectionImpl.java:254) ~[na:1.8.0_92]
                      at org.apache.qpid.server.security.group.cloudfoundry.CloudFoundryDashboardManagementGroupProviderImpl.mayManageServiceInstance(CloudFoundryDashboardManagementGroupProviderImpl.java:228) ~[qpid-broker-core-6.1.1.jar:6.1.1]
                      ... 35 common frames omitted
      

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              k-wall Keith Wall
            • Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: