Disposing a resource in geoserver (via rest interface) I’m getting a null pointer exception on ‘info’ into:
org.geoserver.catalog.ResourcePool.FeatureTypeCache.dispose(String, FeatureType)
Seems that the problem is originated here:
org.geoserver.catalog.impl.CatalogImpl.remove(ResourceInfo)
where the object is actually removed from the catalog before the execution of the above method (dispose).
Here is the stack trace of the suspended thread:
------------------ StackTrace -----------------------
Thread [btpool0-57] (Suspended (breakpoint at line 1790 in ResourcePool$FeatureTypeCache))
ResourcePool$FeatureTypeCache.dispose(String, FeatureType) line: 1790
ResourcePool$FeatureTypeCache.dispose(Object, Object) line: 1
ResourcePool$FeatureTypeCache(ResourcePool$CatalogResourceCache<K,V>).remove(Object) line: 1760
ResourcePool.clear(FeatureTypeInfo) line: 1072
ResourcePool$CacheClearingListener.visit(FeatureTypeInfo) line: 1959
FeatureTypeInfoImpl.accept(CatalogVisitor) line: 96
ResourcePool$CacheClearingListener.handleRemoveEvent(CatalogRemoveEvent) line: 1941
CatalogImpl.event(CatalogEvent) line: 1445
CatalogImpl.fireRemoved(CatalogInfo) line: 1433
CatalogImpl.removed(CatalogInfo) line: 1400
CatalogImpl.remove(ResourceInfo) line: 420
SecureCatalogImpl.remove(ResourceInfo) line: 1274
AdvertisedCatalog(AbstractFilteredCatalog).remove(ResourceInfo) line: 718
LocalWorkspaceCatalog(AbstractCatalogDecorator).remove(ResourceInfo) line: 206
CascadeDeleteVisitor.visit(LayerInfo) line: 128
LayerInfoImpl.accept(CatalogVisitor) line: 239
GeneratedMethodAccessor77.invoke(Object, Object) line: not available
DelegatingMethodAccessorImpl.invoke(Object, Object) line: 43
Method.invoke(Object, Object…) line: 616
ModificationProxy.invoke(Object, Method, Object) line: 145
$Proxy63.accept(CatalogVisitor) line: not available
CascadeDeleteVisitor.visitStore(StoreInfo) line: 69
CascadeDeleteVisitor.visit(DataStoreInfo) line: 82
DataStoreInfoImpl.accept(CatalogVisitor) line: 41
GeneratedMethodAccessor77.invoke(Object, Object) line: not available
DelegatingMethodAccessorImpl.invoke(Object, Object) line: 43
Method.invoke(Object, Object…) line: 616
ModificationProxy.invoke(Object, Method, Object) line: 145
$Proxy3.accept(CatalogVisitor) line: not available
CascadeDeleteVisitor.visit(WorkspaceInfo) line: 46
WorkspaceResource.handleObjectDelete() line: 166
WorkspaceResource(ReflectiveResource).handleDelete() line: 224
WorkspaceFinder(Finder).handle(Request, Response) line: 300
BeanDelegatingRestlet.handle(Request, Response) line: 37
Route(Filter).doHandle(Request, Response) line: 105
Route(Filter).handle(Request, Response) line: 134
RESTDispatcher$1(Router).handle(Request, Response) line: 444
RESTDispatcher$1.handle(Request, Response) line: 204
GeoServerServletConverter(ServletConverter).service(HttpServletRequest, HttpServletResponse) line: 129
RESTDispatcher.handleRequestInternal(HttpServletRequest, HttpServletResponse) line: 86
RESTDispatcher(AbstractController).handleRequest(HttpServletRequest, HttpServletResponse) line: 153
SimpleControllerHandlerAdapter.handle(HttpServletRequest, HttpServletResponse, Object) line: 48
DispatcherServlet.doDispatch(HttpServletRequest, HttpServletResponse) line: 923
DispatcherServlet.doService(HttpServletRequest, HttpServletResponse) line: 852
DispatcherServlet(FrameworkServlet).processRequest(HttpServletRequest, HttpServletResponse) line: 882
DispatcherServlet(FrameworkServlet).doDelete(HttpServletRequest, HttpServletResponse) line: 811
DispatcherServlet(HttpServlet).service(HttpServletRequest, HttpServletResponse) line: 733
DispatcherServlet(HttpServlet).service(ServletRequest, ServletResponse) line: 820
ServletHolder.handle(ServletRequest, ServletResponse) line: 487
ServletHandler$CachedChain.doFilter(ServletRequest, ServletResponse) line: 1093
ThreadLocalsCleanupFilter.doFilter(ServletRequest, ServletResponse, FilterChain) line: 27
ServletHandler$CachedChain.doFilter(ServletRequest, ServletResponse) line: 1084
SpringDelegatingFilter$Chain.doFilter(ServletRequest, ServletResponse) line: 74
AnimatorFilter.doFilter(ServletRequest, ServletResponse, FilterChain) line: 70
SpringDelegatingFilter$Chain.doFilter(ServletRequest, ServletResponse) line: 70
SpringDelegatingFilter.doFilter(ServletRequest, ServletResponse, FilterChain) line: 45
ServletHandler$CachedChain.doFilter(ServletRequest, ServletResponse) line: 1084
AdvancedDispatchFilter.doFilter(ServletRequest, ServletResponse, FilterChain) line: 49
ServletHandler$CachedChain.doFilter(ServletRequest, ServletResponse) line: 1084
FilterChainProxy$VirtualFilterChain.doFilter(ServletRequest, ServletResponse) line: 311
GeoServerCompositeFilter$NestedFilterChain.doFilter(ServletRequest, ServletResponse) line: 68
FilterSecurityInterceptor.invoke(FilterInvocation) line: 116
FilterSecurityInterceptor.doFilter(ServletRequest, ServletResponse, FilterChain) line: 83
GeoServerCompositeFilter$NestedFilterChain.doFilter(ServletRequest, ServletResponse) line: 72
GeoServerSecurityInterceptorFilter(GeoServerCompositeFilter).doFilter(ServletRequest, ServletResponse, FilterChain) line: 91
FilterChainProxy$VirtualFilterChain.doFilter(ServletRequest, ServletResponse) line: 323
GeoServerCompositeFilter$NestedFilterChain.doFilter(ServletRequest, ServletResponse) line: 68
ExceptionTranslationFilter.doFilter(ServletRequest, ServletResponse, FilterChain) line: 113
GeoServerCompositeFilter$NestedFilterChain.doFilter(ServletRequest, ServletResponse) line: 72
GeoServerExceptionTranslationFilter(GeoServerCompositeFilter).doFilter(ServletRequest, ServletResponse, FilterChain) line: 91
FilterChainProxy$VirtualFilterChain.doFilter(ServletRequest, ServletResponse) line: 323
GeoServerAnonymousAuthenticationFilter.doFilter(ServletRequest, ServletResponse, FilterChain) line: 53
FilterChainProxy$VirtualFilterChain.doFilter(ServletRequest, ServletResponse) line: 323
GeoServerCompositeFilter$NestedFilterChain.doFilter(ServletRequest, ServletResponse) line: 68
BasicAuthenticationFilter.doFilter(ServletRequest, ServletResponse, FilterChain) line: 201
GeoServerCompositeFilter$NestedFilterChain.doFilter(ServletRequest, ServletResponse) line: 72
GeoServerBasicAuthenticationFilter(GeoServerCompositeFilter).doFilter(ServletRequest, ServletResponse, FilterChain) line: 91
GeoServerBasicAuthenticationFilter.doFilter(ServletRequest, ServletResponse, FilterChain) line: 82
FilterChainProxy$VirtualFilterChain.doFilter(ServletRequest, ServletResponse) line: 323
GeoServerCompositeFilter$NestedFilterChain.doFilter(ServletRequest, ServletResponse) line: 68
GeoServerSecurityContextPersistenceFilter$1(SecurityContextPersistenceFilter).doFilter(ServletRequest, ServletResponse, FilterChain) line: 87
GeoServerSecurityContextPersistenceFilter$1.doFilter(ServletRequest, ServletResponse, FilterChain) line: 52
GeoServerCompositeFilter$NestedFilterChain.doFilter(ServletRequest, ServletResponse) line: 72
GeoServerSecurityContextPersistenceFilter(GeoServerCompositeFilter).doFilter(ServletRequest, ServletResponse, FilterChain) line: 91
FilterChainProxy$VirtualFilterChain.doFilter(ServletRequest, ServletResponse) line: 323
GeoServerSecurityFilterChainProxy(FilterChainProxy).doFilter(ServletRequest, ServletResponse, FilterChain) line: 173
GeoServerSecurityFilterChainProxy.doFilter(ServletRequest, ServletResponse, FilterChain) line: 134
DelegatingFilterProxy.invokeDelegate(Filter, ServletRequest, ServletResponse, FilterChain) line: 346
DelegatingFilterProxy.doFilter(ServletRequest, ServletResponse, FilterChain) line: 259
ServletHandler$CachedChain.doFilter(ServletRequest, ServletResponse) line: 1084
LoggingFilter.doFilter(ServletRequest, ServletResponse, FilterChain) line: 75
ServletHandler$CachedChain.doFilter(ServletRequest, ServletResponse) line: 1084
GZIPFilter.doFilter(ServletRequest, ServletResponse, FilterChain) line: 48
ServletHandler$CachedChain.doFilter(ServletRequest, ServletResponse) line: 1084
SessionDebugFilter.doFilter(ServletRequest, ServletResponse, FilterChain) line: 47
ServletHandler$CachedChain.doFilter(ServletRequest, ServletResponse) line: 1084
FlushSafeFilter.doFilter(ServletRequest, ServletResponse, FilterChain) line: 43
ServletHandler$CachedChain.doFilter(ServletRequest, ServletResponse) line: 1084
SetCharacterEncodingFilter.doFilter(ServletRequest, ServletResponse, FilterChain) line: 109
ServletHandler$CachedChain.doFilter(ServletRequest, ServletResponse) line: 1084
ServletHandler.handle(String, HttpServletRequest, HttpServletResponse, int) line: 360
SecurityHandler.handle(String, HttpServletRequest, HttpServletResponse, int) line: 216
SessionHandler.handle(String, HttpServletRequest, HttpServletResponse, int) line: 181
WebAppContext(ContextHandler).handle(String, HttpServletRequest, HttpServletResponse, int) line: 726
WebAppContext.handle(String, HttpServletRequest, HttpServletResponse, int) line: 405
Server(HandlerWrapper).handle(String, HttpServletRequest, HttpServletResponse, int) line: 152
Server.handle(HttpConnection) line: 324
HttpConnection.handleRequest() line: 505
HttpConnection$RequestHandler.headerComplete() line: 828
HttpParser.parseNext() line: 514
HttpParser.parseAvailable() line: 211
HttpConnection.handle() line: 380
SocketConnector$Connection.run() line: 228
BoundedThreadPool$PoolThread.run() line: 450
|