[ https://issues.apache.org/jira/browse/SLING-1633?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Felix Meschberger reassigned SLING-1633: ---------------------------------------- Assignee: Felix Meschberger > After unregistering a ResourceDecorator service any request causes a > NullPointerException to be thrown > ------------------------------------------------------------------------------------------------------ > > Key: SLING-1633 > URL: https://issues.apache.org/jira/browse/SLING-1633 > Project: Sling > Issue Type: Bug > Components: JCR > Affects Versions: JCR Resource 2.0.6 > Reporter: Davide Maestroni > Assignee: Felix Meschberger > Priority: Critical > > After registering and then unregistering a service implementing the > ResourceDecorator interface, any request causes a NullPointerException thus > making the whole repository unusable even if the HTTP response code is always > 200 (see trace below). > 09.08.2010 12:23:15.109 *INFO* [127.0.0.1 [1281349395109] GET > /sling/content.json HTTP/1.1] logs/request.log 09/Aug/2010:12:23:15 +0200 [2] > <- 200 - 0ms > 09.08.2010 12:23:15.109 *INFO* [127.0.0.1 [1281349395109] GET > /sling/content.json HTTP/1.1] logs/access.log 127.0.0.1 - admin > 09/Aug/2010:12:23:15 +0200 "GET /sling/content.json HTTP/1.1" 200 - "-" > "curl/7.19.5 (i586-pc-mingw32msvc) libcurl/7.19.5 zlib/1.2.3" > 09.08.2010 12:23:15.109 *ERROR* [127.0.0.1 [1281349395109] GET > /sling/content.json HTTP/1.1] org.apache.sling.engine.impl.SlingMainServlet > service: Uncaught Problem handling the request java.lang.NullPointerException > at > org.apache.sling.engine.impl.SlingHttpServletRequestImpl.getResource(SlingHttpServletRequestImpl.java:107) > at > org.apache.sling.servlets.resolver.internal.SlingServletResolver.getErrorResource(SlingServletResolver.java:537) > at > org.apache.sling.servlets.resolver.internal.SlingServletResolver.handleError(SlingServletResolver.java:490) > at > org.apache.sling.engine.impl.SlingMainServlet.service(SlingMainServlet.java:363) > at > org.apache.sling.engine.impl.SlingMainServlet.service(SlingMainServlet.java:207) > at > org.apache.felix.http.base.internal.handler.ServletHandler.doHandle(ServletHandler.java:91) > at > org.apache.felix.http.base.internal.handler.ServletHandler.handle(ServletHandler.java:77) > at > org.apache.felix.http.base.internal.dispatch.ServletPipeline.handle(ServletPipeline.java:42) > at > org.apache.felix.http.base.internal.dispatch.InvocationFilterChain.doFilter(InvocationFilterChain.java:49) > at > org.apache.felix.http.base.internal.dispatch.HttpFilterChain.doFilter(HttpFilterChain.java:33) > at > org.apache.felix.http.base.internal.dispatch.FilterPipeline.dispatch(FilterPipeline.java:48) > at > org.apache.felix.http.base.internal.dispatch.Dispatcher.dispatch(Dispatcher.java:39) > at > org.apache.felix.http.base.internal.DispatcherServlet.service(DispatcherServlet.java:55) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:820) > at > org.apache.felix.http.proxy.ProxyServlet.service(ProxyServlet.java:60) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:820) > at > org.apache.sling.launchpad.base.webapp.SlingServletDelegate.service(SlingServletDelegate.java:275) > at > org.apache.sling.launchpad.webapp.SlingServlet.service(SlingServlet.java:148) > at > org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:527) > at > org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:423) > at > org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:119) > at > org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:456) > at > org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:226) > at > org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:924) > at > org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:358) > at > org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:183) > at > org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:860) > at > org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117) > at > org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:245) > at > org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:126) > at > org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:113) > at org.eclipse.jetty.server.Server.handle(Server.java:335) > at > org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:588) > at > org.eclipse.jetty.server.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:1029) > at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:549) > at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:211) > at > org.eclipse.jetty.server.HttpConnection.handle(HttpConnection.java:418) > at > org.eclipse.jetty.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:489) > at > org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:436) > at java.lang.Thread.run(Unknown Source) > The issue seems to be solved just replacing line 110 of > bundles/jcr/resource/src/main/java/org/apache/sling/jcr/resource/internal/ResourceDecoratorTracker.java > with: > ResourceDecorator[] decorators = EMPTY_ARRAY; -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.