"The ResourceConfig instance does not contain any root resource classes" repeated error in Logs when Managing Teams and Microsoft Teams is installed

XMLWordPrintable

    • 8.2
    • 19
    • Severity 3 - Minor
    • 2

      Issue Summary

      After configuring Microsoft Teams integration, whenever we use the Advanced Roadmap function to manage teams, it logs the following error in atlassian-jira.log:

      2022-05-24 14:48:59,283-0300 http-nio-8080-exec-18 ERROR xxx 888x1720x1 182xw44 0:0:0:0:0:0:0:1 /rest/teams/1.0/teams/find [c.s.j.s.impl.application.RootResourceUriRules] The ResourceConfig instance does not contain any root resource classes.
      
      2022-05-24 14:48:59,283-0300 http-nio-8080-exec-18 ERROR xxx 888x1720x1 182xw44 0:0:0:0:0:0:0:1 /rest/teams/1.0/teams/find [c.a.plugin.servlet.DefaultServletModuleManager] Unable to create new reference LazyLoadedFilterReference{descriptor=microsoft-teams:rest-api-resource-filter (The My Rest Resource Plugin), filterConfig=com.atlassian.plugin.servlet.filter.PluginFilterConfig@41318e82}
      io.atlassian.util.concurrent.LazyReference$InitializationException: com.sun.jersey.api.container.ContainerException: The ResourceConfig instance does not contain any root resource classes.
      	at io.atlassian.util.concurrent.LazyReference.getInterruptibly(LazyReference.java:156)
      	at io.atlassian.util.concurrent.LazyReference.get(LazyReference.java:116)
      	at com.atlassian.plugin.servlet.DefaultServletModuleManager.getInstance(DefaultServletModuleManager.java:431)                        
      	at com.atlassian.plugin.servlet.DefaultServletModuleManager.getFilter(DefaultServletModuleManager.java:424)
      	at com.atlassian.plugin.servlet.DefaultServletModuleManager.getFilters(DefaultServletModuleManager.java:289)
      	at com.atlassian.plugins.rest.module.servlet.DefaultRestServletModuleManager.getFilters(DefaultRestServletModuleManager.java:125)
      	... 34 filtered
      	at com.atlassian.jira.plugin.mobile.web.filter.MobileAppRequestFilter.doFilter(MobileAppRequestFilter.java:59)
      	... 4 filtered
      	at com.atlassian.jira.plugin.mobile.login.MobileLoginSuccessFilter.doFilter(MobileLoginSuccessFilter.java:54)
      	... 3 filtered
      	at com.atlassian.diagnostics.internal.platform.monitor.http.HttpRequestMonitoringFilter.doFilter(HttpRequestMonitoringFilter.java:55)
      	... 8 filtered
      	at com.atlassian.web.servlet.plugin.request.RedirectInterceptingFilter.doFilter(RedirectInterceptingFilter.java:21)
      	... 43 filtered
      	at com.atlassian.ratelimiting.internal.filter.RateLimitFilter.doFilter(RateLimitFilter.java:73)
      	... 3 filtered
      	at com.atlassian.troubleshooting.thready.filter.AbstractThreadNamingFilter.doFilter(AbstractThreadNamingFilter.java:46)
      	... 17 filtered
      	at com.atlassian.jira.security.JiraSecurityFilter.lambda$doFilter$0(JiraSecurityFilter.java:66)
      	... 1 filtered
      	at com.atlassian.jira.security.JiraSecurityFilter.doFilter(JiraSecurityFilter.java:64)
      	... 16 filtered
      	at com.atlassian.plugins.rest.module.servlet.RestSeraphFilter.doFilter(RestSeraphFilter.java:38)
      	... 3 filtered
      	at com.atlassian.pats.web.filter.TokenBasedAuthenticationFilter.doFilter(TokenBasedAuthenticationFilter.java:83)
      	... 19 filtered
      	at com.atlassian.jira.servermetrics.CorrelationIdPopulatorFilter.doFilter(CorrelationIdPopulatorFilter.java:30)
      	... 5 filtered
      	at com.atlassian.plugins.authentication.impl.basicauth.filter.DisableBasicAuthFilter.doFilter(DisableBasicAuthFilter.java:70)
      	... 8 filtered
      	at com.atlassian.ratelimiting.internal.filter.RateLimitPreAuthFilter.doFilter(RateLimitPreAuthFilter.java:71)
      	... 3 filtered
      	at com.atlassian.web.servlet.plugin.request.RedirectInterceptingFilter.doFilter(RedirectInterceptingFilter.java:21)
      	... 4 filtered
      	at com.atlassian.troubleshooting.thready.filter.AbstractThreadNamingFilter.doFilter(AbstractThreadNamingFilter.java:46)
      	... 3 filtered
      	at com.atlassian.web.servlet.plugin.LocationCleanerFilter.doFilter(LocationCleanerFilter.java:36)
      	... 26 filtered
      	at com.atlassian.jira.servermetrics.MetricsCollectorFilter.doFilter(MetricsCollectorFilter.java:25)
      	... 25 filtered
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
      	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
      	at java.lang.Thread.run(Thread.java:748)
      Caused by: com.sun.jersey.api.container.ContainerException: The ResourceConfig instance does not contain any root resource classes.
      	at com.sun.jersey.server.impl.application.RootResourceUriRules.<init>(RootResourceUriRules.java:99)
      	at com.sun.jersey.server.impl.application.WebApplicationImpl._initiate(WebApplicationImpl.java:1359)
      	at com.sun.jersey.server.impl.application.WebApplicationImpl.access$700(WebApplicationImpl.java:180)
      	at com.sun.jersey.server.impl.application.WebApplicationImpl$13.f(WebApplicationImpl.java:799)
      	at com.sun.jersey.server.impl.application.WebApplicationImpl$13.f(WebApplicationImpl.java:795)
      	... 1 filtered
      	at com.atlassian.plugins.rest.module.RestDelegatingServletFilter$JerseyOsgiServletContainer.initiate(RestDelegatingServletFilter.java:165)
      	... 5 filtered
      	at com.atlassian.plugins.rest.module.RestDelegatingServletFilter.initServletContainer(RestDelegatingServletFilter.java:90)
      	at com.atlassian.plugins.rest.module.RestDelegatingServletFilter.init(RestDelegatingServletFilter.java:63)
      	... 1 filtered
      	at com.atlassian.plugin.servlet.DefaultServletModuleManager$LazyLoadedFilterReference.create(DefaultServletModuleManager.java:500)
      	at com.atlassian.plugin.servlet.DefaultServletModuleManager$LazyLoadedFilterReference.create(DefaultServletModuleManager.java:487)
      	at io.atlassian.util.concurrent.LazyReference$Sync.run(LazyReference.java:332)
      	at io.atlassian.util.concurrent.LazyReference.getInterruptibly(LazyReference.java:150)
      	... 251 more
      

      "The ResourceConfig instance does not contain any root resource classes" repeated error in Logs when Managing Teams and Microsoft Teams is installed
      This is reproducible on Data Center: (yes) / (no)

      Steps to Reproduce

      1) Setting up integration and initial test

      • Environment used
        • (Server): Jira 8.20.5 single node*, Microsoft Teams for Jira plugin Version 2021.12.85, UPM plugin 5.0.3, openjdk version "1.8.0_292"
        • MS Teams with APP Jira Server installed version 2020.09.25
      • Application link created following https://www.msteams-atlassian.com/JiraServer/#installing-jira-server-add-on
      • MS Teams command "connect" issued on the Jira App, Jira ID provided, atlassian account used for the authorization
      • MS Teams was able to connect to a localhost:8080 jira instance
      • MS Teams command "create" issued - Was able to successfully create a story.
        => no errors observed at the log files so far

      2) Using Advanced Roadmaps

      • Create a new plan for project "SCRUM"
      • Click at the <teams>
      • Click at the <Manage shared teams>
      • Create a new team, adding members
      • Back to the plan, click to add a new team and select the newly created shared team
      • Open Atlassian-jira.log

      Expected Results

      • No errors reported

      Actual Results

      Access log: Referer shows the access to the TeamManagement page:

      0:0:0:0:0:0:0:1 888x1720x1 xxx [24/May/2022:14:48:59 -0300] "POST /rest/teams/1.0/teams/find- HTTP/1.1" 200 344 338 "http://localhost:8080/secure/TeamManagement.jspa?planUrl=http%3A%2F%2Flocalhost%3A8080%2Fsecure%2FPortfolioPlanView.jspa%3Fid%3D33%26sid%3D33%26vid%3D35%23plan%2Fteams" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.64 Safari/537.36" "182xw44"
      

      And atlassian-jira.log shows the following error:

      2022-05-24 14:48:59,283-0300 http-nio-8080-exec-18 ERROR xxx 888x1720x1 182xw44 0:0:0:0:0:0:0:1 /rest/teams/1.0/teams/find [c.s.j.s.impl.application.RootResourceUriRules] The ResourceConfig instance does not contain any root resource classes.
      2022-05-24 14:48:59,283-0300 http-nio-8080-exec-18 ERROR xxx 888x1720x1 182xw44 0:0:0:0:0:0:0:1 /rest/teams/1.0/teams/find [c.a.plugin.servlet.DefaultServletModuleManager] Unable to create new reference LazyLoadedFilterReference{descriptor=microsoft-teams:rest-api-resource-filter (The My Rest Resource Plugin), filterConfig=com.atlassian.plugin.servlet.filter.PluginFilterConfig@41318e82}
      io.atlassian.util.concurrent.LazyReference$InitializationException: com.sun.jersey.api.container.ContainerException: The ResourceConfig instance does not contain any root resource classes.
      	at io.atlassian.util.concurrent.LazyReference.getInterruptibly(LazyReference.java:156)
      	at io.atlassian.util.concurrent.LazyReference.get(LazyReference.java:116)
      	at com.atlassian.plugin.servlet.DefaultServletModuleManager.getInstance(DefaultServletModuleManager.java:431)
      	[...]
      

      Other actions executed as finding the members, creating a shared team, adding members also triggers the error at the logs:

      0:0:0:0:0:0:0:1 831x1383x1 xxx [24/May/2022:13:51:36 -0300] "POST /rest/teams/1.0/persons/page- HTTP/1.1" 200 378 240 "http://localhost:8080/secure/TeamManagement.jspa?planUrl=http%3A%2F%2Flocalhost%3A8080%2Fsecure%2FPortfolioPlanView.jspa%3Fid%3D33%26sid%3D33%26vid%3D35%23plan%2Fteams" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.64 Safari/537.36" "25id3f"
      
      2022-05-24 13:51:36,939-0300 http-nio-8080-exec-22 ERROR xxx 831x1383x1 25id3f 0:0:0:0:0:0:0:1 /rest/teams/1.0/persons/page [c.a.plugin.servlet.DefaultServletModuleManager] Unable to create new reference LazyLoadedFilterReference{descriptor=microsoft-teams:rest-api-resource-filter (The My Rest Resource Plugin), filterConfig=com.atlassian.plugin.servlet.filter.PluginFilterConfig@41318e82}
      io.atlassian.util.concurrent.LazyReference$InitializationException: com.sun.jersey.api.container.ContainerException: The ResourceConfig instance does not contain any root resource classes.
      
      0:0:0:0:0:0:0:1 831x1388x1 xxx [24/May/2022:13:51:52 -0300] "POST /rest/teams/1.0/teams/create- HTTP/1.1" 200 29 191 "http://localhost:8080/secure/TeamManagement.jspa?planUrl=http%3A%2F%2Flocalhost%3A8080%2Fsecure%2FPortfolioPlanView.jspa%3Fid%3D33%26sid%3D33%26vid%3D35%23plan%2Fteams" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.64 Safari/537.36" "25id3f"
      
      2022-05-24 13:51:52,738-0300 http-nio-8080-exec-11 ERROR xxx 831x1388x1 25id3f 0:0:0:0:0:0:0:1 /rest/teams/1.0/teams/create [c.a.plugin.servlet.DefaultServletModuleManager] Unable to create new reference LazyLoadedFilterReference{descriptor=microsoft-teams:rest-api-resource-filter (The My Rest Resource Plugin), filterConfig=com.atlassian.plugin.servlet.filter.PluginFilterConfig@41318e82}
      io.atlassian.util.concurrent.LazyReference$InitializationException: com.sun.jersey.api.container.ContainerException: The ResourceConfig instance does not contain any root resource classes.
      
      0:0:0:0:0:0:0:1 831x1391x1 xxx [24/May/2022:13:51:57 -0300] "POST /rest/teams/1.0/persons/find- HTTP/1.1" 200 378 167 "http://localhost:8080/secure/TeamManagement.jspa?planUrl=http%3A%2F%2Flocalhost%3A8080%2Fsecure%2FPortfolioPlanView.jspa%3Fid%3D33%26sid%3D33%26vid%3D35%23plan%2Fteams" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.64 Safari/537.36" "25id3f"
      
      2022-05-24 13:51:57,116-0300 http-nio-8080-exec-8 ERROR xxx 831x1391x1 25id3f 0:0:0:0:0:0:0:1 /rest/teams/1.0/persons/find [c.a.plugin.servlet.DefaultServletModuleManager] Unable to create new reference LazyLoadedFilterReference{descriptor=microsoft-teams:rest-api-resource-filter (The My Rest Resource Plugin), filterConfig=com.atlassian.plugin.servlet.filter.PluginFilterConfig@41318e82}
      io.atlassian.util.concurrent.LazyReference$InitializationException: com.sun.jersey.api.container.ContainerException: The ResourceConfig instance does not contain any root resource classes.
      
      0:0:0:0:0:0:0:1 831x1393x2 xxx [24/May/2022:13:52:00 -0300] "POST /rest/teams/1.0/teams/34/addResource- HTTP/1.1" 200 37 226 "http://localhost:8080/secure/TeamManagement.jspa?planUrl=http%3A%2F%2Flocalhost%3A8080%2Fsecure%2FPortfolioPlanView.jspa%3Fid%3D33%26sid%3D33%26vid%3D35%23plan%2Fteams" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.64 Safari/537.36" "25id3f"
      
      2022-05-24 13:52:00,081-0300 http-nio-8080-exec-14 ERROR xxx 831x1393x2 25id3f 0:0:0:0:0:0:0:1 /rest/teams/1.0/teams/34/addResource [c.a.plugin.servlet.DefaultServletModuleManager] Unable to create new reference LazyLoadedFilterReference{descriptor=microsoft-teams:rest-api-resource-filter (The My Rest Resource Plugin), filterConfig=com.atlassian.plugin.servlet.filter.PluginFilterConfig@41318e82}
      io.atlassian.util.concurrent.LazyReference$InitializationException: com.sun.jersey.api.container.ContainerException: The ResourceConfig instance does not contain any root resource classes.
      

      Workaround

      Currently there is no known workaround for this behavior. A workaround will be added here when available

       

      • Same error was also observed on Jira 8.20.6 instances

            Assignee:
            Unassigned
            Reporter:
            Murakami [Atlassian Support]
            Votes:
            10 Vote for this issue
            Watchers:
            19 Start watching this issue

              Created:
              Updated: