Forums

Articles
Create
cancel
Showing results for 
Search instead for 
Did you mean: 

Not able to expose REST API, when plugin is bundled as obr

Sunita Patro _Appfire_ November 3, 2017

We are trying to expose a rest API using create-confluence-plugin-module or following instructions provided in confluence KBs.

We are able to expose rest API for confluence in a simple plugin or any other plugin which is bundled as jar.

But when same approach followed in obr, and after plugin installed, whenever the rest resource URL is invoked, we get below exception. We have spent lot of time investigating this but no luck. If anyone has any idea, please help!

Thank you!

{code}
2017-11-03 11:50:09,063 INFO [http-nio-8083-exec-15] [server.impl.application.WebApplicationImpl] _initiate Initiating Jersey application, version 'Jersey: 1.8-atlassian-16 03/23/2015 10:20 PM'
2017-11-03 11:50:09,453 ERROR [http-nio-8083-exec-15] [server.impl.application.RootResourceUriRules] <init> The ResourceConfig instance does not contain any root resource classes.
-- url: /rest/firstresource/1.0/abc | traceId: 8706b939a2d029de | userName: automation
2017-11-03 11:50:09,454 ERROR [http-nio-8083-exec-15] [atlassian.plugin.servlet.DefaultServletModuleManager] getInstance Unable to create new reference LazyLoadedFilterReference{descriptor=org.swift.confluence.sql:first-resource-filter (The First Resource Plugin), filterConfig=com.atlassian.plugin.servlet.filter.PluginFilterConfig@3b869849}
-- url: /rest/firstresource/1.0/abc | traceId: 8706b939a2d029de | userName: automation
com.atlassian.util.concurrent.LazyReference$InitializationException: com.sun.jersey.api.container.ContainerException: The ResourceConfig instance does not contain any root resource classes.
at com.atlassian.util.concurrent.LazyReference.getInterruptibly(LazyReference.java:149)
at com.atlassian.util.concurrent.LazyReference.get(LazyReference.java:112)
at com.atlassian.plugin.servlet.DefaultServletModuleManager.getInstance(DefaultServletModuleManager.java:447)
at com.atlassian.plugin.servlet.DefaultServletModuleManager.getFilter(DefaultServletModuleManager.java:440)
at com.atlassian.plugin.servlet.DefaultServletModuleManager.getFilters(DefaultServletModuleManager.java:300)
at com.atlassian.plugins.rest.module.servlet.DefaultRestServletModuleManager.getFilters(DefaultRestServletModuleManager.java:121)
at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:68)
at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:58)
at com.atlassian.plugin.servlet.filter.DelegatingPluginFilter.doFilter(DelegatingPluginFilter.java:64)
at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:37)
at com.atlassian.plugin.servlet.filter.DelegatingPluginFilter$1.doFilter(DelegatingPluginFilter.java:58)
at com.atlassian.plugins.rest.module.servlet.RestServletUtilsUpdaterFilter.doFilterInternal(RestServletUtilsUpdaterFilter.java:22)
at com.atlassian.plugins.rest.module.servlet.RestServletUtilsUpdaterFilter.doFilter(RestServletUtilsUpdaterFilter.java:34)
at com.atlassian.plugin.servlet.filter.DelegatingPluginFilter.doFilter(DelegatingPluginFilter.java:64)
at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:37)
at com.atlassian.plugin.servlet.filter.DelegatingPluginFilter$1.doFilter(DelegatingPluginFilter.java:58)
at com.atlassian.applinks.core.rest.context.ContextFilter.doFilter(ContextFilter.java:24)
at com.atlassian.plugin.servlet.filter.DelegatingPluginFilter.doFilter(DelegatingPluginFilter.java:64)
at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:37)

{code}

 

0 answers

Suggest an answer

Log in or Sign up to answer
TAGS
AUG Leaders

Atlassian Community Events