[Geoserver-users] WMTS Cascading issues

Hi guys,

Does anyone have experience with Cascading secured WMTS Services in Geoserver?

I can seem to get it to work. WMS cascading work perfectly, but I want to cascade WMTS instead.

I’m using Authkey for Authentication in the Origin Geoserver (i.e. WMTS Source Geoserver).

When I preview in the Cascaded Layer as WMS I get this

Here are the Logs
2018-03-27 16:30:29,018 DEBUG [wms.map] - Writing png image …
2018-03-27 16:30:29,022 DEBUG [config.impl] - Could not locate service of type interface org.geoserver.wms.WMSInfo in workspace WorkspaceInfoImpl[test], available services were [WMTSInfoImpl[WMTS], WMSInfoImpl[WMS], WFSInfoImpl[WFS], WCSInfoImpl[WCS]]
2018-03-27 16:30:29,022 DEBUG [geotools.styling] - number of fts set 1
2018-03-27 16:30:29,508 DEBUG [wms.map] - Writing png image … done!
2018-03-27 16:30:29,508 DEBUG [geoserver.filters] - Not compressing output for mimetype: image/png
2018-03-27 16:30:29,508 DEBUG [resources.image] - Failed to clear rendered image adapters field to null. Not a problem per se, but if the finalizer thread is not fast enough, this might result in a OOM
java.lang.NoSuchFieldException: theImage
at java.lang.Class.getDeclaredField(Class.java:2070)
at org.geotools.resources.image.ImageUtilities.cleanField(ImageUtilities.java:1314)
at org.geotools.resources.image.ImageUtilities.disposeSinglePlanarImage(ImageUtilities.java:1292)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:814)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:822)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:822)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:798)
at org.geoserver.wms.RasterCleaner.disposeImage(RasterCleaner.java:88)
at org.geoserver.wms.RasterCleaner.disposeImages(RasterCleaner.java:79)
at org.geoserver.wms.RasterCleaner.finished(RasterCleaner.java:65)
at org.geoserver.ows.Dispatcher.fireFinishedCallback(Dispatcher.java:306)
at org.geoserver.ows.Dispatcher.handleRequestInternal(Dispatcher.java:282)
at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:174)

The Source Geoserver Logs look like this

2018-03-27 16:30:29,003 DEBUG [security.IncludeQueryStringAntPathRequestMatcher] - Matched Path: /gwc/service/wmts, QueryString: authkey=e18d97d7-b43e-4fd2-85c4-da9d0045542e?request=getTile&tilematrixset=EPSG%3A3857&TileRow=2063&service=WMTS&format=image%2Fpng&style=&TileCol=2467&version=1.0.0&layer=aerial%3AAERIAL_2015&TileMatrix=EPSG%3A3857%3A12& with /**
2018-03-27 16:30:29,003 DEBUG [geoserver.filters] - Creating a new http session inside the web UI (normal behavior)
java.lang.Exception: Full stack trace for the session creation path
at org.geoserver.filters.SessionDebugFilter$SessionDebugWrapper.getSession(SessionDebugFilter.java:92)
at org.geoserver.filters.SessionDebugFilter$SessionDebugWrapper.getSession(SessionDebugFilter.java:70)
at javax.servlet.http.HttpServletRequestWrapper.getSession(HttpServletRequestWrapper.java:240)
at org.geoserver.security.filter.GeoServerSecurityContextPersistenceFilter$1.doFilter(GeoServerSecurityContextPersistenceFilter.java:50)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at

Anyone has an idea how I can go about this?

···

Kind regards,
Steve Omondi

Can you request tiles from the source directly? Next check if the requests being made work in the browser.

Ian

On Tue, 27 Mar 2018, 14:46 Steve Omondi, <steve.omondi@anonymised.com> wrote:

Hi guys,

Does anyone have experience with Cascading secured WMTS Services in Geoserver?

I can seem to get it to work. WMS cascading work perfectly, but I want to cascade WMTS instead.

I’m using Authkey for Authentication in the Origin Geoserver (i.e. WMTS Source Geoserver).

When I preview in the Cascaded Layer as WMS I get this

Here are the Logs
2018-03-27 16:30:29,018 DEBUG [wms.map] - Writing png image …
2018-03-27 16:30:29,022 DEBUG [config.impl] - Could not locate service of type interface org.geoserver.wms.WMSInfo in workspace WorkspaceInfoImpl[test], available services were [WMTSInfoImpl[WMTS], WMSInfoImpl[WMS], WFSInfoImpl[WFS], WCSInfoImpl[WCS]]
2018-03-27 16:30:29,022 DEBUG [geotools.styling] - number of fts set 1
2018-03-27 16:30:29,508 DEBUG [wms.map] - Writing png image … done!
2018-03-27 16:30:29,508 DEBUG [geoserver.filters] - Not compressing output for mimetype: image/png
2018-03-27 16:30:29,508 DEBUG [resources.image] - Failed to clear rendered image adapters field to null. Not a problem per se, but if the finalizer thread is not fast enough, this might result in a OOM
java.lang.NoSuchFieldException: theImage
at java.lang.Class.getDeclaredField(Class.java:2070)
at org.geotools.resources.image.ImageUtilities.cleanField(ImageUtilities.java:1314)
at org.geotools.resources.image.ImageUtilities.disposeSinglePlanarImage(ImageUtilities.java:1292)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:814)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:822)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:822)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:798)
at org.geoserver.wms.RasterCleaner.disposeImage(RasterCleaner.java:88)
at org.geoserver.wms.RasterCleaner.disposeImages(RasterCleaner.java:79)
at org.geoserver.wms.RasterCleaner.finished(RasterCleaner.java:65)
at org.geoserver.ows.Dispatcher.fireFinishedCallback(Dispatcher.java:306)
at org.geoserver.ows.Dispatcher.handleRequestInternal(Dispatcher.java:282)
at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:174)

The Source Geoserver Logs look like this

2018-03-27 16:30:29,003 DEBUG [security.IncludeQueryStringAntPathRequestMatcher] - Matched Path: /gwc/service/wmts, QueryString: authkey=e18d97d7-b43e-4fd2-85c4-da9d0045542e?request=getTile&tilematrixset=EPSG%3A3857&TileRow=2063&service=WMTS&format=image%2Fpng&style=&TileCol=2467&version=1.0.0&layer=aerial%3AAERIAL_2015&TileMatrix=EPSG%3A3857%3A12& with /**
2018-03-27 16:30:29,003 DEBUG [geoserver.filters] - Creating a new http session inside the web UI (normal behavior)
java.lang.Exception: Full stack trace for the session creation path
at org.geoserver.filters.SessionDebugFilter$SessionDebugWrapper.getSession(SessionDebugFilter.java:92)
at org.geoserver.filters.SessionDebugFilter$SessionDebugWrapper.getSession(SessionDebugFilter.java:70)
at javax.servlet.http.HttpServletRequestWrapper.getSession(HttpServletRequestWrapper.java:240)
at org.geoserver.security.filter.GeoServerSecurityContextPersistenceFilter$1.doFilter(GeoServerSecurityContextPersistenceFilter.java:50)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at

Anyone has an idea how I can go about this?

Kind regards,
Steve Omondi


Check out the vibrant tech community on one of the world’s most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot_______________________________________________
Geoserver-users mailing list

Please make sure you read the following two resources before posting to this list:

If you want to request a feature or an improvement, also see this: https://github.com/geoserver/geoserver/wiki/Successfully-requesting-and-integrating-new-features-and-improvements-in-GeoServer

Geoserver-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-users

Can you request tiles from the source directly?

Yes. I can use the Tile in the Source Geoserver in Openlayers however not in QGIS.

When I tried the WMTS from source in QGIS I can getCapabilities succesfully but the layer is not loaded in the Map Canvas.

Next check if the requests being made work in the browser.

Yes the request works in the broiwser but retuns the black image still

image.png

···

On Tue, Mar 27, 2018 at 10:16 PM, Ian Turton <ijturton@anonymised.com> wrote:

Can you request tiles from the source directly? Next check if the requests being made work in the browser.

Ian

On Tue, 27 Mar 2018, 14:46 Steve Omondi, <steve.omondi@anonymised.com> wrote:

Hi guys,

Does anyone have experience with Cascading secured WMTS Services in Geoserver?

I can seem to get it to work. WMS cascading work perfectly, but I want to cascade WMTS instead.

I’m using Authkey for Authentication in the Origin Geoserver (i.e. WMTS Source Geoserver).

When I preview in the Cascaded Layer as WMS I get this

Here are the Logs
2018-03-27 16:30:29,018 DEBUG [wms.map] - Writing png image …
2018-03-27 16:30:29,022 DEBUG [config.impl] - Could not locate service of type interface org.geoserver.wms.WMSInfo in workspace WorkspaceInfoImpl[test], available services were [WMTSInfoImpl[WMTS], WMSInfoImpl[WMS], WFSInfoImpl[WFS], WCSInfoImpl[WCS]]
2018-03-27 16:30:29,022 DEBUG [geotools.styling] - number of fts set 1
2018-03-27 16:30:29,508 DEBUG [wms.map] - Writing png image … done!
2018-03-27 16:30:29,508 DEBUG [geoserver.filters] - Not compressing output for mimetype: image/png
2018-03-27 16:30:29,508 DEBUG [resources.image] - Failed to clear rendered image adapters field to null. Not a problem per se, but if the finalizer thread is not fast enough, this might result in a OOM
java.lang.NoSuchFieldException: theImage
at java.lang.Class.getDeclaredField(Class.java:2070)
at org.geotools.resources.image.ImageUtilities.cleanField(ImageUtilities.java:1314)
at org.geotools.resources.image.ImageUtilities.disposeSinglePlanarImage(ImageUtilities.java:1292)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:814)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:822)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:822)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:798)
at org.geoserver.wms.RasterCleaner.disposeImage(RasterCleaner.java:88)
at org.geoserver.wms.RasterCleaner.disposeImages(RasterCleaner.java:79)
at org.geoserver.wms.RasterCleaner.finished(RasterCleaner.java:65)
at org.geoserver.ows.Dispatcher.fireFinishedCallback(Dispatcher.java:306)
at org.geoserver.ows.Dispatcher.handleRequestInternal(Dispatcher.java:282)
at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:174)

The Source Geoserver Logs look like this

2018-03-27 16:30:29,003 DEBUG [security.IncludeQueryStringAntPathRequestMatcher] - Matched Path: /gwc/service/wmts, QueryString: authkey=e18d97d7-b43e-4fd2-85c4-da9d0045542e?request=getTile&tilematrixset=EPSG%3A3857&TileRow=2063&service=WMTS&format=image%2Fpng&style=&TileCol=2467&version=1.0.0&layer=aerial%3AAERIAL_2015&TileMatrix=EPSG%3A3857%3A12& with /**
2018-03-27 16:30:29,003 DEBUG [geoserver.filters] - Creating a new http session inside the web UI (normal behavior)
java.lang.Exception: Full stack trace for the session creation path
at org.geoserver.filters.SessionDebugFilter$SessionDebugWrapper.getSession(SessionDebugFilter.java:92)
at org.geoserver.filters.SessionDebugFilter$SessionDebugWrapper.getSession(SessionDebugFilter.java:70)
at javax.servlet.http.HttpServletRequestWrapper.getSession(HttpServletRequestWrapper.java:240)
at org.geoserver.security.filter.GeoServerSecurityContextPersistenceFilter$1.doFilter(GeoServerSecurityContextPersistenceFilter.java:50)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at

Anyone has an idea how I can go about this?

Kind regards,
Steve Omondi


Check out the vibrant tech community on one of the world’s most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot_______________________________________________
Geoserver-users mailing list

Please make sure you read the following two resources before posting to this list:

If you want to request a feature or an improvement, also see this: https://github.com/geoserver/geoserver/wiki/Successfully-requesting-and-integrating-new-features-and-improvements-in-GeoServer

Geoserver-users@anonymised.comsourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-users

Kind regards,
Steve Omondi

Anyone here has a clue how I can go about this ERROR.

More logs;

03 Apr 12:37:41 DEBUG [wmts.client] - Loading tile wmts_8_151_130: http://host:port/geoserver/gwc/service/wmts?authkey=e18d97d7-b43e-4fd2-85c4-da9d0045542e?request=getTile&tilematrixset=EPSG%3A3857&TileRow=130&service=WMTS&format=image%2Fpng&style=&TileCol=151&version=1.0.0&layer=aerial%3AAERIAL&TileMatrix=EPSG%3A3857%3A8&
03 Apr 12:37:41 DEBUG [wmts.client] - Tile image not yet loaded for tile wmts_8_151_130
03 Apr 12:37:41 DEBUG [wmts.client] - URL is http://host:port/geoserver/gwc/service/wmts?authkey=e18d97d7-b43e-4fd2-85c4-da9d0045542e?request=getTile&tilematrixset=EPSG%3A3857&TileRow=130&service=WMTS&format=image%2Fpng&style=&TileCol=151&version=1.0.0&layer=aerial%3AAERIAL&TileMatrix=EPSG%3A3857%3A8&
03 Apr 12:37:41 ERROR [geotools.tile] - Failed to load image: http://host:port/geoserver/gwc/service/wmts?authkey=e18d97d7-b43e-4fd2-85c4-da9d0045542e?request=getTile&tilematrixset=EPSG%3A3857&TileRow=130&service=WMTS&format=image%2Fpng&style=&TileCol=151&version=1.0.0&layer=aerial%3AAERIAL&TileMatrix=EPSG%3A3857%3A8&
java.io.IOException: Connection returned code 403
at org.geotools.data.wmts.client.WMTSTile.setupInputStream(WMTSTile.java:258)
at org.geotools.data.wmts.client.WMTSTile.doLoadImageTileImage(WMTSTile.java:231)
at org.geotools.data.wmts.client.WMTSTile.loadImageTileImage(WMTSTile.java:219)
at org.geotools.tile.Tile.getBufferedImage(Tile.java:182)
at org.geotools.map.WMTSCoverageReader.getTileImage(WMTSCoverageReader.java:378)
at org.geotools.map.WMTSCoverageReader.renderTile(WMTSCoverageReader.java:367)
at org.geotools.map.WMTSCoverageReader.renderTiles(WMTSCoverageReader.java:350)
at org.geotools.map.WMTSCoverageReader.getMap(WMTSCoverageReader.java:315)
at org.geotools.map.WMTSCoverageReader.read(WMTSCoverageReader.java:282)
at org.geotools.renderer.lite.gridcoverage2d.GridCoverageReaderHelper.readSingleCoverage(GridCoverageReaderHelper.java:549)
at org.geotools.renderer.lite.gridcoverage2d.GridCoverageReaderHelper.readCoverage(GridCoverageReaderHelper.java:184)
at org.geotools.renderer.lite.gridcoverage2d.GridCoverageRenderer.renderImage(GridCoverageRenderer.java:832)
at org.geotools.renderer.lite.gridcoverage2d.GridCoverageRenderer.renderImage(GridCoverageRenderer.java:804)
at org.geoserver.wms.map.RenderedImageMapOutputFormat.directRasterRender(RenderedImageMapOutputFormat.java:1015)
at org.geoserver.wms.map.RenderedImageMapOutputFormat.produceMap(RenderedImageMapOutputFormat.java:369)
at org.geoserver.wms.map.RenderedImageMapOutputFormat.produceMap(RenderedImageMapOutputFormat.java:286)
at org.geoserver.wms.map.RenderedImageMapOutputFormat.produceMap(RenderedImageMapOutputFormat.java:141)
at org.geoserver.wms.GetMap.executeInternal(GetMap.java:653)
at org.geoserver.wms.GetMap.run(GetMap.java:285)
at org.geoserver.wms.GetMap.run(GetMap.java:131)
at org.geoserver.wms.DefaultWebMapService.getMap(DefaultWebMapService.java:320)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:333)
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:190)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157)
at org.geoserver.kml.WebMapServiceKmlInterceptor.invoke(WebMapServiceKmlInterceptor.java:38)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
at org.geoserver.gwc.wms.CacheSeedingWebMapService.invoke(CacheSeedingWebMapService.java:62)
at org.geoserver.gwc.wms.CacheSeedingWebMapService.invoke(CacheSeedingWebMapService.java:36)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
at org.geoserver.gwc.wms.CachingWebMapService.invoke(CachingWebMapService.java:80)
at org.geoserver.gwc.wms.CachingWebMapService.invoke(CachingWebMapService.java:55)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
at org.geoserver.ows.util.RequestObjectLogger.invoke(RequestObjectLogger.java:55)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:213)
at com.sun.proxy.$Proxy73.getMap(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.geoserver.ows.Dispatcher.execute(Dispatcher.java:867)
at org.geoserver.ows.Dispatcher.handleRequestInternal(Dispatcher.java:270)
at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:174)
at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:50)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:963)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:897)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970)
at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:861)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:635)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:742)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.apache.catalina.filters.CorsFilter.handleNonCORS(CorsFilter.java:419)
at org.apache.catalina.filters.CorsFilter.doFilter(CorsFilter.java:169)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.ThreadLocalsCleanupFilter.doFilter(ThreadLocalsCleanupFilter.java:28)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:75)
at org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:231)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:71)
at org.geoserver.monitor.MonitorFilter.doFilter(MonitorFilter.java:144)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:71)
at org.geoserver.wms.animate.AnimatorFilter.doFilter(AnimatorFilter.java:71)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:71)
at org.geoserver.filters.SpringDelegatingFilter.doFilter(SpringDelegatingFilter.java:46)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.platform.AdvancedDispatchFilter.doFilter(AdvancedDispatchFilter.java:50)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:316)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:126)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:90)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:114)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerAnonymousAuthenticationFilter.doFilter(GeoServerAnonymousAuthenticationFilter.java:54)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilterInternal(BasicAuthenticationFilter.java:158)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.geoserver.security.filter.GeoServerBasicAuthenticationFilter.doFilter(GeoServerBasicAuthenticationFilter.java:84)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:91)
at org.geoserver.security.filter.GeoServerSecurityContextPersistenceFilter$1.doFilter(GeoServerSecurityContextPersistenceFilter.java:53)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:213)
at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:176)
at org.geoserver.security.GeoServerSecurityFilterChainProxy.doFilter(GeoServerSecurityFilterChainProxy.java:152)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:88)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.XFrameOptionsFilter.doFilter(XFrameOptionsFilter.java:89)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:42)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.SessionDebugFilter.doFilter(SessionDebugFilter.java:48)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.FlushSafeFilter.doFilter(FlushSafeFilter.java:44)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:197)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:198)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:478)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:80)
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:624)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:341)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:799)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:861)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1455)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
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)
03 Apr 12:37:41 DEBUG [lite.gridcoverage2d] - Applying Raster Symbolizer
03 Apr 12:37:41 TRACE [geotools.factory] - ENTRY (GridCoverageFactory)
03 Apr 12:37:41 TRACE [geotools.factory] - RETURN (GridCoverageFactory): found implementation Optional.
03 Apr 12:37:41 TRACE [geotools.factory] - ENTRY (GridCoverageFactory)
03 Apr 12:37:41 TRACE [geotools.factory] - RETURN (GridCoverageFactory): found implementation Optional.
03 Apr 12:37:41 TRACE [geotools.factory] - ENTRY (GridCoverageFactory)
03 Apr 12:37:41 TRACE [geotools.factory] - RETURN (GridCoverageFactory): found implementation Optional.
03 Apr 12:37:41 TRACE [geotools.factory] - ENTRY (GridCoverageFactory)
03 Apr 12:37:41 TRACE [geotools.factory] - RETURN (GridCoverageFactory): found implementation Optional.
03 Apr 12:37:41 TRACE [geotools.factory] - ENTRY (GridCoverageFactory)
03 Apr 12:37:41 TRACE [geotools.factory] - RETURN (GridCoverageFactory): found implementation Optional.
03 Apr 12:37:41 TRACE [geotools.factory] - ENTRY (GridCoverageFactory)
03 Apr 12:37:41 TRACE [geotools.factory] - RETURN (GridCoverageFactory): found implementation Optional.
03 Apr 12:37:41 TRACE [geotools.factory] - ENTRY (GridCoverageFactory)
03 Apr 12:37:41 TRACE [geotools.factory] - RETURN (GridCoverageFactory): found implementation Optional.
03 Apr 12:37:41 INFO [geoserver.wms] -
Request: getMap
Angle = 0.0
BaseUrl = http://ros-gs1:8180/geoserver/
Bbox = SRSEnvelope[32.113037109375 : 40.550537109375, -4.7296142578125 : 1.3238525390625]
BgColor = java.awt.Color[r=255,g=255,b=255]
Buffer = 0
CQLFilter = null
Crs = GEOGCS[“WGS 84”,
DATUM[“World Geodetic System 1984”,
SPHEROID[“WGS 84”, 6378137.0, 298.257223563, AUTHORITY[“EPSG”,“7030”]],
AUTHORITY[“EPSG”,“6326”]],
PRIMEM[“Greenwich”, 0.0, AUTHORITY[“EPSG”,“8901”]],
UNIT[“degree”, 0.017453292519943295],
AXIS[“Geodetic longitude”, EAST],
AXIS[“Geodetic latitude”, NORTH],
AUTHORITY[“EPSG”,“4326”]]
Elevation =
Env = {}
Exceptions = SE_XML
FeatureId = null
FeatureVersion = null
Filter = null
Filters = null
Format = image/png
FormatOptions = {}
Get = true
Height = 551
Interpolations =
Layers = [org.geoserver.wms.MapLayerInfo@anonymised.com792…]
MaxFeatures = null
Palette = null
RawKvp = {REQUEST=GetMap, FORMAT=image/png, SRS=EPSG:4326, BBOX=32.113037109375,-4.7296142578125,40.550537109375,1.3238525390625, VERSION=1.1.1, STYLES=, SERVICE=WMS, WIDTH=768, HEIGHT=551, TRANSPARENT=true, LAYERS=test:AERIAL}
RemoteOwsType = null
RemoteOwsURL = null
Request = GetMap
RequestCharset = UTF-8
ScaleMethod = null
Sld = null
SldBody = null
SldVersion = null
SortBy = null
SortByArrays = null
SRS = EPSG:4326
StartIndex = null
StyleBody = null
StyleFormat = sld
Styles = [StyleImpl[ name=raster]]
StyleUrl = null
StyleVersion = null
Tiled = false
TilesOrigin = null
Time =
Transparent = true
ValidateSchema = false
Version = 1.1.1
ViewParams = null
Width = 768
03 Apr 12:37:41 DEBUG [wms.map] - Writing png image …
03 Apr 12:37:41 DEBUG [config.impl] - Could not locate service of type interface org.geoserver.wms.WMSInfo in workspace WorkspaceInfoImpl[test], available services were [WMTSInfoImpl[WMTS], WMSInfoImpl[WMS], WFSInfoImpl[WFS], WCSInfoImpl[WCS]]
03 Apr 12:37:41 DEBUG [geotools.styling] - number of fts set 1
03 Apr 12:37:42 DEBUG [wms.map] - Writing png image … done!
03 Apr 12:37:42 DEBUG [geoserver.filters] - Not compressing output for mimetype: image/png
03 Apr 12:37:42 DEBUG [resources.image] - Failed to clear rendered image adapters field to null. Not a problem per se, but if the finalizer thread is not fast enough, this might result in a OOM
java.lang.NoSuchFieldException: theImage
at java.lang.Class.getDeclaredField(Class.java:2070)
at org.geotools.resources.image.ImageUtilities.cleanField(ImageUtilities.java:1314)
at org.geotools.resources.image.ImageUtilities.disposeSinglePlanarImage(ImageUtilities.java:1292)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:814)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:822)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:822)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:798)
at org.geoserver.wms.RasterCleaner.disposeImage(RasterCleaner.java:88)
at org.geoserver.wms.RasterCleaner.disposeImages(RasterCleaner.java:79)
at org.geoserver.wms.RasterCleaner.finished(RasterCleaner.java:65)
at org.geoserver.ows.Dispatcher.fireFinishedCallback(Dispatcher.java:306)
at org.geoserver.ows.Dispatcher.handleRequestInternal(Dispatcher.java:282)
at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:174)
at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:50)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:963)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:897)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970)
at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:861)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:635)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:742)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.apache.catalina.filters.CorsFilter.handleNonCORS(CorsFilter.java:419)
at org.apache.catalina.filters.CorsFilter.doFilter(CorsFilter.java:169)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.ThreadLocalsCleanupFilter.doFilter(ThreadLocalsCleanupFilter.java:28)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:75)
at org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:231)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:71)
at org.geoserver.monitor.MonitorFilter.doFilter(MonitorFilter.java:144)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:71)
at org.geoserver.wms.animate.AnimatorFilter.doFilter(AnimatorFilter.java:71)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:71)
at org.geoserver.filters.SpringDelegatingFilter.doFilter(SpringDelegatingFilter.java:46)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.platform.AdvancedDispatchFilter.doFilter(AdvancedDispatchFilter.java:50)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:316)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:126)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:90)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:114)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerAnonymousAuthenticationFilter.doFilter(GeoServerAnonymousAuthenticationFilter.java:54)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilterInternal(BasicAuthenticationFilter.java:158)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.geoserver.security.filter.GeoServerBasicAuthenticationFilter.doFilter(GeoServerBasicAuthenticationFilter.java:84)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:91)
at org.geoserver.security.filter.GeoServerSecurityContextPersistenceFilter$1.doFilter(GeoServerSecurityContextPersistenceFilter.java:53)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:213)
at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:176)
at org.geoserver.security.GeoServerSecurityFilterChainProxy.doFilter(GeoServerSecurityFilterChainProxy.java:152)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:88)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.XFrameOptionsFilter.doFilter(XFrameOptionsFilter.java:89)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:42)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.SessionDebugFilter.doFilter(SessionDebugFilter.java:48)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.FlushSafeFilter.doFilter(FlushSafeFilter.java:44)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:197)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:198)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:478)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:80)
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:624)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:341)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:799)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:861)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1455)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
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)
03 Apr 12:37:42 DEBUG [resources.image] - Failed to clear rendered image adapters field to null. Not a problem per se, but if the finalizer thread is not fast enough, this might result in a OOM
java.lang.NoSuchFieldException: theImage
at java.lang.Class.getDeclaredField(Class.java:2070)
at org.geotools.resources.image.ImageUtilities.cleanField(ImageUtilities.java:1314)
at org.geotools.resources.image.ImageUtilities.disposeSinglePlanarImage(ImageUtilities.java:1292)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:814)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:822)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:798)
at org.geoserver.wms.RasterCleaner.disposeImage(RasterCleaner.java:88)
at org.geoserver.wms.RasterCleaner.disposeImages(RasterCleaner.java:79)
at org.geoserver.wms.RasterCleaner.finished(RasterCleaner.java:65)
at org.geoserver.ows.Dispatcher.fireFinishedCallback(Dispatcher.java:306)
at org.geoserver.ows.Dispatcher.handleRequestInternal(Dispatcher.java:282)
at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:174)
at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:50)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:963)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:897)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970)
at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:861)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:635)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:742)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.apache.catalina.filters.CorsFilter.handleNonCORS(CorsFilter.java:419)
at org.apache.catalina.filters.CorsFilter.doFilter(CorsFilter.java:169)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.ThreadLocalsCleanupFilter.doFilter(ThreadLocalsCleanupFilter.java:28)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:75)
at org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:231)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:71)
at org.geoserver.monitor.MonitorFilter.doFilter(MonitorFilter.java:144)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:71)
at org.geoserver.wms.animate.AnimatorFilter.doFilter(AnimatorFilter.java:71)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:71)
at org.geoserver.filters.SpringDelegatingFilter.doFilter(SpringDelegatingFilter.java:46)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.platform.AdvancedDispatchFilter.doFilter(AdvancedDispatchFilter.java:50)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:316)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:126)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:90)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:114)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerAnonymousAuthenticationFilter.doFilter(GeoServerAnonymousAuthenticationFilter.java:54)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilterInternal(BasicAuthenticationFilter.java:158)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.geoserver.security.filter.GeoServerBasicAuthenticationFilter.doFilter(GeoServerBasicAuthenticationFilter.java:84)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:91)
at org.geoserver.security.filter.GeoServerSecurityContextPersistenceFilter$1.doFilter(GeoServerSecurityContextPersistenceFilter.java:53)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:213)
at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:176)
at org.geoserver.security.GeoServerSecurityFilterChainProxy.doFilter(GeoServerSecurityFilterChainProxy.java:152)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:88)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.XFrameOptionsFilter.doFilter(XFrameOptionsFilter.java:89)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:42)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.SessionDebugFilter.doFilter(SessionDebugFilter.java:48)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.FlushSafeFilter.doFilter(FlushSafeFilter.java:44)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:197)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:198)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:478)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:80)
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:624)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:341)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:799)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:861)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1455)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
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)
03 Apr 12:37:42 DEBUG [monitor.OpenSessionInViewFilter] - Closing single Hibernate Session in OpenSessionInViewFilter
03

image.png

image.png

···

On Wed, Mar 28, 2018 at 8:57 AM, Steve Omondi <steve.omondi@anonymised.com> wrote:

Can you request tiles from the source directly?

Yes. I can use the Tile in the Source Geoserver in Openlayers however not in QGIS.

When I tried the WMTS from source in QGIS I can getCapabilities succesfully but the layer is not loaded in the Map Canvas.

Next check if the requests being made work in the browser.

Yes the request works in the broiwser but retuns the black image still

Kind regards,
Steve Omondi

Kind regards,
Steve Omondi

On Tue, Mar 27, 2018 at 10:16 PM, Ian Turton <ijturton@anonymised.com> wrote:

Can you request tiles from the source directly? Next check if the requests being made work in the browser.

Ian

On Tue, 27 Mar 2018, 14:46 Steve Omondi, <steve.omondi@anonymised.com> wrote:

Hi guys,

Does anyone have experience with Cascading secured WMTS Services in Geoserver?

I can seem to get it to work. WMS cascading work perfectly, but I want to cascade WMTS instead.

I’m using Authkey for Authentication in the Origin Geoserver (i.e. WMTS Source Geoserver).

When I preview in the Cascaded Layer as WMS I get this

Here are the Logs
2018-03-27 16:30:29,018 DEBUG [wms.map] - Writing png image …
2018-03-27 16:30:29,022 DEBUG [config.impl] - Could not locate service of type interface org.geoserver.wms.WMSInfo in workspace WorkspaceInfoImpl[test], available services were [WMTSInfoImpl[WMTS], WMSInfoImpl[WMS], WFSInfoImpl[WFS], WCSInfoImpl[WCS]]
2018-03-27 16:30:29,022 DEBUG [geotools.styling] - number of fts set 1
2018-03-27 16:30:29,508 DEBUG [wms.map] - Writing png image … done!
2018-03-27 16:30:29,508 DEBUG [geoserver.filters] - Not compressing output for mimetype: image/png
2018-03-27 16:30:29,508 DEBUG [resources.image] - Failed to clear rendered image adapters field to null. Not a problem per se, but if the finalizer thread is not fast enough, this might result in a OOM
java.lang.NoSuchFieldException: theImage
at java.lang.Class.getDeclaredField(Class.java:2070)
at org.geotools.resources.image.ImageUtilities.cleanField(ImageUtilities.java:1314)
at org.geotools.resources.image.ImageUtilities.disposeSinglePlanarImage(ImageUtilities.java:1292)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:814)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:822)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:822)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:798)
at org.geoserver.wms.RasterCleaner.disposeImage(RasterCleaner.java:88)
at org.geoserver.wms.RasterCleaner.disposeImages(RasterCleaner.java:79)
at org.geoserver.wms.RasterCleaner.finished(RasterCleaner.java:65)
at org.geoserver.ows.Dispatcher.fireFinishedCallback(Dispatcher.java:306)
at org.geoserver.ows.Dispatcher.handleRequestInternal(Dispatcher.java:282)
at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:174)

The Source Geoserver Logs look like this

2018-03-27 16:30:29,003 DEBUG [security.IncludeQueryStringAntPathRequestMatcher] - Matched Path: /gwc/service/wmts, QueryString: authkey=e18d97d7-b43e-4fd2-85c4-da9d0045542e?request=getTile&tilematrixset=EPSG%3A3857&TileRow=2063&service=WMTS&format=image%2Fpng&style=&TileCol=2467&version=1.0.0&layer=aerial%3AAERIAL_2015&TileMatrix=EPSG%3A3857%3A12& with /**
2018-03-27 16:30:29,003 DEBUG [geoserver.filters] - Creating a new http session inside the web UI (normal behavior)
java.lang.Exception: Full stack trace for the session creation path
at org.geoserver.filters.SessionDebugFilter$SessionDebugWrapper.getSession(SessionDebugFilter.java:92)
at org.geoserver.filters.SessionDebugFilter$SessionDebugWrapper.getSession(SessionDebugFilter.java:70)
at javax.servlet.http.HttpServletRequestWrapper.getSession(HttpServletRequestWrapper.java:240)
at org.geoserver.security.filter.GeoServerSecurityContextPersistenceFilter$1.doFilter(GeoServerSecurityContextPersistenceFilter.java:50)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at

Anyone has an idea how I can go about this?

Kind regards,
Steve Omondi


Check out the vibrant tech community on one of the world’s most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot_______________________________________________
Geoserver-users mailing list

Please make sure you read the following two resources before posting to this list:

If you want to request a feature or an improvement, also see this: https://github.com/geoserver/geoserver/wiki/Successfully-requesting-and-integrating-new-features-and-improvements-in-GeoServer

Geoserver-users@anonymised.comrge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-users

It looks like the wmts server is not authenticating correctly - Error 403: “The server understood the request, but is refusing to fulfill it. Authorization will not help and the request SHOULD NOT be repeated.”

The only thing I can suggest is to turn http connection pooling off and try again.

If that doesn’t help you need to work out exactly what the server is expecting vs what GeoServer is sending (wireshark or suchlike may help here),

Ian

image.png

image.png

···

On 3 April 2018 at 10:43, Steve Omondi <steve.omondi@anonymised.com> wrote:

Anyone here has a clue how I can go about this ERROR.

More logs;

03 Apr 12:37:41 DEBUG [wmts.client] - Loading tile wmts_8_151_130: http://host:port/geoserver/gwc/service/wmts?authkey=e18d97d7-b43e-4fd2-85c4-da9d0045542e?request=getTile&tilematrixset=EPSG%3A3857&TileRow=130&service=WMTS&format=image%2Fpng&style=&TileCol=151&version=1.0.0&layer=aerial%3AAERIAL&TileMatrix=EPSG%3A3857%3A8&
03 Apr 12:37:41 DEBUG [wmts.client] - Tile image not yet loaded for tile wmts_8_151_130
03 Apr 12:37:41 DEBUG [wmts.client] - URL is http://host:port/geoserver/gwc/service/wmts?authkey=e18d97d7-b43e-4fd2-85c4-da9d0045542e?request=getTile&tilematrixset=EPSG%3A3857&TileRow=130&service=WMTS&format=image%2Fpng&style=&TileCol=151&version=1.0.0&layer=aerial%3AAERIAL&TileMatrix=EPSG%3A3857%3A8&
03 Apr 12:37:41 ERROR [geotools.tile] - Failed to load image: http://host:port/geoserver/gwc/service/wmts?authkey=e18d97d7-b43e-4fd2-85c4-da9d0045542e?request=getTile&tilematrixset=EPSG%3A3857&TileRow=130&service=WMTS&format=image%2Fpng&style=&TileCol=151&version=1.0.0&layer=aerial%3AAERIAL&TileMatrix=EPSG%3A3857%3A8&
java.io.IOException: Connection returned code 403
at org.geotools.data.wmts.client.WMTSTile.setupInputStream(WMTSTile.java:258)
at org.geotools.data.wmts.client.WMTSTile.doLoadImageTileImage(WMTSTile.java:231)
at org.geotools.data.wmts.client.WMTSTile.loadImageTileImage(WMTSTile.java:219)
at org.geotools.tile.Tile.getBufferedImage(Tile.java:182)
at org.geotools.map.WMTSCoverageReader.getTileImage(WMTSCoverageReader.java:378)
at org.geotools.map.WMTSCoverageReader.renderTile(WMTSCoverageReader.java:367)
at org.geotools.map.WMTSCoverageReader.renderTiles(WMTSCoverageReader.java:350)
at org.geotools.map.WMTSCoverageReader.getMap(WMTSCoverageReader.java:315)
at org.geotools.map.WMTSCoverageReader.read(WMTSCoverageReader.java:282)
at org.geotools.renderer.lite.gridcoverage2d.GridCoverageReaderHelper.readSingleCoverage(GridCoverageReaderHelper.java:549)
at org.geotools.renderer.lite.gridcoverage2d.GridCoverageReaderHelper.readCoverage(GridCoverageReaderHelper.java:184)
at org.geotools.renderer.lite.gridcoverage2d.GridCoverageRenderer.renderImage(GridCoverageRenderer.java:832)
at org.geotools.renderer.lite.gridcoverage2d.GridCoverageRenderer.renderImage(GridCoverageRenderer.java:804)
at org.geoserver.wms.map.RenderedImageMapOutputFormat.directRasterRender(RenderedImageMapOutputFormat.java:1015)
at org.geoserver.wms.map.RenderedImageMapOutputFormat.produceMap(RenderedImageMapOutputFormat.java:369)
at org.geoserver.wms.map.RenderedImageMapOutputFormat.produceMap(RenderedImageMapOutputFormat.java:286)
at org.geoserver.wms.map.RenderedImageMapOutputFormat.produceMap(RenderedImageMapOutputFormat.java:141)
at org.geoserver.wms.GetMap.executeInternal(GetMap.java:653)
at org.geoserver.wms.GetMap.run(GetMap.java:285)
at org.geoserver.wms.GetMap.run(GetMap.java:131)
at org.geoserver.wms.DefaultWebMapService.getMap(DefaultWebMapService.java:320)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:333)
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:190)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157)
at org.geoserver.kml.WebMapServiceKmlInterceptor.invoke(WebMapServiceKmlInterceptor.java:38)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
at org.geoserver.gwc.wms.CacheSeedingWebMapService.invoke(CacheSeedingWebMapService.java:62)
at org.geoserver.gwc.wms.CacheSeedingWebMapService.invoke(CacheSeedingWebMapService.java:36)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
at org.geoserver.gwc.wms.CachingWebMapService.invoke(CachingWebMapService.java:80)
at org.geoserver.gwc.wms.CachingWebMapService.invoke(CachingWebMapService.java:55)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
at org.geoserver.ows.util.RequestObjectLogger.invoke(RequestObjectLogger.java:55)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:213)
at com.sun.proxy.$Proxy73.getMap(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.geoserver.ows.Dispatcher.execute(Dispatcher.java:867)
at org.geoserver.ows.Dispatcher.handleRequestInternal(Dispatcher.java:270)
at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:174)
at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:50)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:963)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:897)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970)
at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:861)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:635)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:742)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.apache.catalina.filters.CorsFilter.handleNonCORS(CorsFilter.java:419)
at org.apache.catalina.filters.CorsFilter.doFilter(CorsFilter.java:169)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.ThreadLocalsCleanupFilter.doFilter(ThreadLocalsCleanupFilter.java:28)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:75)
at org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:231)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:71)
at org.geoserver.monitor.MonitorFilter.doFilter(MonitorFilter.java:144)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:71)
at org.geoserver.wms.animate.AnimatorFilter.doFilter(AnimatorFilter.java:71)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:71)
at org.geoserver.filters.SpringDelegatingFilter.doFilter(SpringDelegatingFilter.java:46)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.platform.AdvancedDispatchFilter.doFilter(AdvancedDispatchFilter.java:50)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:316)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:126)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:90)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:114)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerAnonymousAuthenticationFilter.doFilter(GeoServerAnonymousAuthenticationFilter.java:54)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilterInternal(BasicAuthenticationFilter.java:158)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.geoserver.security.filter.GeoServerBasicAuthenticationFilter.doFilter(GeoServerBasicAuthenticationFilter.java:84)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:91)
at org.geoserver.security.filter.GeoServerSecurityContextPersistenceFilter$1.doFilter(GeoServerSecurityContextPersistenceFilter.java:53)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:213)
at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:176)
at org.geoserver.security.GeoServerSecurityFilterChainProxy.doFilter(GeoServerSecurityFilterChainProxy.java:152)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:88)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.XFrameOptionsFilter.doFilter(XFrameOptionsFilter.java:89)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:42)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.SessionDebugFilter.doFilter(SessionDebugFilter.java:48)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.FlushSafeFilter.doFilter(FlushSafeFilter.java:44)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:197)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:198)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:478)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:80)
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:624)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:341)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:799)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:861)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1455)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
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)
03 Apr 12:37:41 DEBUG [lite.gridcoverage2d] - Applying Raster Symbolizer
03 Apr 12:37:41 TRACE [geotools.factory] - ENTRY (GridCoverageFactory)
03 Apr 12:37:41 TRACE [geotools.factory] - RETURN (GridCoverageFactory): found implementation Optional.
03 Apr 12:37:41 TRACE [geotools.factory] - ENTRY (GridCoverageFactory)
03 Apr 12:37:41 TRACE [geotools.factory] - RETURN (GridCoverageFactory): found implementation Optional.
03 Apr 12:37:41 TRACE [geotools.factory] - ENTRY (GridCoverageFactory)
03 Apr 12:37:41 TRACE [geotools.factory] - RETURN (GridCoverageFactory): found implementation Optional.
03 Apr 12:37:41 TRACE [geotools.factory] - ENTRY (GridCoverageFactory)
03 Apr 12:37:41 TRACE [geotools.factory] - RETURN (GridCoverageFactory): found implementation Optional.
03 Apr 12:37:41 TRACE [geotools.factory] - ENTRY (GridCoverageFactory)
03 Apr 12:37:41 TRACE [geotools.factory] - RETURN (GridCoverageFactory): found implementation Optional.
03 Apr 12:37:41 TRACE [geotools.factory] - ENTRY (GridCoverageFactory)
03 Apr 12:37:41 TRACE [geotools.factory] - RETURN (GridCoverageFactory): found implementation Optional.
03 Apr 12:37:41 TRACE [geotools.factory] - ENTRY (GridCoverageFactory)
03 Apr 12:37:41 TRACE [geotools.factory] - RETURN (GridCoverageFactory): found implementation Optional.
03 Apr 12:37:41 INFO [geoserver.wms] -
Request: getMap
Angle = 0.0
BaseUrl = http://ros-gs1:8180/geoserver/
Bbox = SRSEnvelope[32.113037109375 : 40.550537109375, -4.7296142578125 : 1.3238525390625]
BgColor = java.awt.Color[r=255,g=255,b=255]
Buffer = 0
CQLFilter = null
Crs = GEOGCS[“WGS 84”,
DATUM[“World Geodetic System 1984”,
SPHEROID[“WGS 84”, 6378137.0, 298.257223563, AUTHORITY[“EPSG”,“7030”]],
AUTHORITY[“EPSG”,“6326”]],
PRIMEM[“Greenwich”, 0.0, AUTHORITY[“EPSG”,“8901”]],
UNIT[“degree”, 0.017453292519943295],
AXIS[“Geodetic longitude”, EAST],
AXIS[“Geodetic latitude”, NORTH],
AUTHORITY[“EPSG”,“4326”]]
Elevation =
Env = {}
Exceptions = SE_XML
FeatureId = null
FeatureVersion = null
Filter = null
Filters = null
Format = image/png
FormatOptions = {}
Get = true
Height = 551
Interpolations =
Layers = [org.geoserver.wms.MapLayerInfo@anonymised.com]
MaxFeatures = null
Palette = null
RawKvp = {REQUEST=GetMap, FORMAT=image/png, SRS=EPSG:4326, BBOX=32.113037109375,-4.7296142578125,40.550537109375,1.3238525390625, VERSION=1.1.1, STYLES=, SERVICE=WMS, WIDTH=768, HEIGHT=551, TRANSPARENT=true, LAYERS=test:AERIAL}
RemoteOwsType = null
RemoteOwsURL = null
Request = GetMap
RequestCharset = UTF-8
ScaleMethod = null
Sld = null
SldBody = null
SldVersion = null
SortBy = null
SortByArrays = null
SRS = EPSG:4326
StartIndex = null
StyleBody = null
StyleFormat = sld
Styles = [StyleImpl[ name=raster]]
StyleUrl = null
StyleVersion = null
Tiled = false
TilesOrigin = null
Time =
Transparent = true
ValidateSchema = false
Version = 1.1.1
ViewParams = null
Width = 768
03 Apr 12:37:41 DEBUG [wms.map] - Writing png image …
03 Apr 12:37:41 DEBUG [config.impl] - Could not locate service of type interface org.geoserver.wms.WMSInfo in workspace WorkspaceInfoImpl[test], available services were [WMTSInfoImpl[WMTS], WMSInfoImpl[WMS], WFSInfoImpl[WFS], WCSInfoImpl[WCS]]
03 Apr 12:37:41 DEBUG [geotools.styling] - number of fts set 1
03 Apr 12:37:42 DEBUG [wms.map] - Writing png image … done!
03 Apr 12:37:42 DEBUG [geoserver.filters] - Not compressing output for mimetype: image/png
03 Apr 12:37:42 DEBUG [resources.image] - Failed to clear rendered image adapters field to null. Not a problem per se, but if the finalizer thread is not fast enough, this might result in a OOM
java.lang.NoSuchFieldException: theImage
at java.lang.Class.getDeclaredField(Class.java:2070)
at org.geotools.resources.image.ImageUtilities.cleanField(ImageUtilities.java:1314)
at org.geotools.resources.image.ImageUtilities.disposeSinglePlanarImage(ImageUtilities.java:1292)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:814)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:822)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:822)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:798)
at org.geoserver.wms.RasterCleaner.disposeImage(RasterCleaner.java:88)
at org.geoserver.wms.RasterCleaner.disposeImages(RasterCleaner.java:79)
at org.geoserver.wms.RasterCleaner.finished(RasterCleaner.java:65)
at org.geoserver.ows.Dispatcher.fireFinishedCallback(Dispatcher.java:306)
at org.geoserver.ows.Dispatcher.handleRequestInternal(Dispatcher.java:282)
at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:174)
at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:50)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:963)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:897)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970)
at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:861)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:635)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:742)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.apache.catalina.filters.CorsFilter.handleNonCORS(CorsFilter.java:419)
at org.apache.catalina.filters.CorsFilter.doFilter(CorsFilter.java:169)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.ThreadLocalsCleanupFilter.doFilter(ThreadLocalsCleanupFilter.java:28)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:75)
at org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:231)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:71)
at org.geoserver.monitor.MonitorFilter.doFilter(MonitorFilter.java:144)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:71)
at org.geoserver.wms.animate.AnimatorFilter.doFilter(AnimatorFilter.java:71)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:71)
at org.geoserver.filters.SpringDelegatingFilter.doFilter(SpringDelegatingFilter.java:46)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.platform.AdvancedDispatchFilter.doFilter(AdvancedDispatchFilter.java:50)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:316)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:126)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:90)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:114)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerAnonymousAuthenticationFilter.doFilter(GeoServerAnonymousAuthenticationFilter.java:54)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilterInternal(BasicAuthenticationFilter.java:158)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.geoserver.security.filter.GeoServerBasicAuthenticationFilter.doFilter(GeoServerBasicAuthenticationFilter.java:84)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:91)
at org.geoserver.security.filter.GeoServerSecurityContextPersistenceFilter$1.doFilter(GeoServerSecurityContextPersistenceFilter.java:53)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:213)
at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:176)
at org.geoserver.security.GeoServerSecurityFilterChainProxy.doFilter(GeoServerSecurityFilterChainProxy.java:152)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:88)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.XFrameOptionsFilter.doFilter(XFrameOptionsFilter.java:89)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:42)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.SessionDebugFilter.doFilter(SessionDebugFilter.java:48)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.FlushSafeFilter.doFilter(FlushSafeFilter.java:44)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:197)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:198)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:478)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:80)
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:624)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:341)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:799)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:861)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1455)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
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)
03 Apr 12:37:42 DEBUG [resources.image] - Failed to clear rendered image adapters field to null. Not a problem per se, but if the finalizer thread is not fast enough, this might result in a OOM
java.lang.NoSuchFieldException: theImage
at java.lang.Class.getDeclaredField(Class.java:2070)
at org.geotools.resources.image.ImageUtilities.cleanField(ImageUtilities.java:1314)
at org.geotools.resources.image.ImageUtilities.disposeSinglePlanarImage(ImageUtilities.java:1292)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:814)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:822)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:798)
at org.geoserver.wms.RasterCleaner.disposeImage(RasterCleaner.java:88)
at org.geoserver.wms.RasterCleaner.disposeImages(RasterCleaner.java:79)
at org.geoserver.wms.RasterCleaner.finished(RasterCleaner.java:65)
at org.geoserver.ows.Dispatcher.fireFinishedCallback(Dispatcher.java:306)
at org.geoserver.ows.Dispatcher.handleRequestInternal(Dispatcher.java:282)
at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:174)
at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:50)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:963)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:897)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970)
at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:861)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:635)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:742)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.apache.catalina.filters.CorsFilter.handleNonCORS(CorsFilter.java:419)
at org.apache.catalina.filters.CorsFilter.doFilter(CorsFilter.java:169)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.ThreadLocalsCleanupFilter.doFilter(ThreadLocalsCleanupFilter.java:28)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:75)
at org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:231)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:71)
at org.geoserver.monitor.MonitorFilter.doFilter(MonitorFilter.java:144)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:71)
at org.geoserver.wms.animate.AnimatorFilter.doFilter(AnimatorFilter.java:71)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:71)
at org.geoserver.filters.SpringDelegatingFilter.doFilter(SpringDelegatingFilter.java:46)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.platform.AdvancedDispatchFilter.doFilter(AdvancedDispatchFilter.java:50)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:316)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:126)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:90)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:114)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerAnonymousAuthenticationFilter.doFilter(GeoServerAnonymousAuthenticationFilter.java:54)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilterInternal(BasicAuthenticationFilter.java:158)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.geoserver.security.filter.GeoServerBasicAuthenticationFilter.doFilter(GeoServerBasicAuthenticationFilter.java:84)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:91)
at org.geoserver.security.filter.GeoServerSecurityContextPersistenceFilter$1.doFilter(GeoServerSecurityContextPersistenceFilter.java:53)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:213)
at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:176)
at org.geoserver.security.GeoServerSecurityFilterChainProxy.doFilter(GeoServerSecurityFilterChainProxy.java:152)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:88)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.XFrameOptionsFilter.doFilter(XFrameOptionsFilter.java:89)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:42)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.SessionDebugFilter.doFilter(SessionDebugFilter.java:48)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.FlushSafeFilter.doFilter(FlushSafeFilter.java:44)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:197)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:198)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:478)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:80)
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:624)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:341)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:799)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:861)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1455)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
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)
03 Apr 12:37:42 DEBUG [monitor.OpenSessionInViewFilter] - Closing single Hibernate Session in OpenSessionInViewFilter
03

Kind regards,
Steve Omondi

On Wed, Mar 28, 2018 at 8:57 AM, Steve Omondi <steve.omondi@anonymised.com> wrote:

Can you request tiles from the source directly?

Yes. I can use the Tile in the Source Geoserver in Openlayers however not in QGIS.

When I tried the WMTS from source in QGIS I can getCapabilities succesfully but the layer is not loaded in the Map Canvas.

Next check if the requests being made work in the browser.

Yes the request works in the broiwser but retuns the black image still

Kind regards,
Steve Omondi

On Tue, Mar 27, 2018 at 10:16 PM, Ian Turton <ijturton@anonymised.com> wrote:

Can you request tiles from the source directly? Next check if the requests being made work in the browser.

Ian

On Tue, 27 Mar 2018, 14:46 Steve Omondi, <steve.omondi@anonymised.com> wrote:

Hi guys,

Does anyone have experience with Cascading secured WMTS Services in Geoserver?

I can seem to get it to work. WMS cascading work perfectly, but I want to cascade WMTS instead.

I’m using Authkey for Authentication in the Origin Geoserver (i.e. WMTS Source Geoserver).

When I preview in the Cascaded Layer as WMS I get this

Here are the Logs
2018-03-27 16:30:29,018 DEBUG [wms.map] - Writing png image …
2018-03-27 16:30:29,022 DEBUG [config.impl] - Could not locate service of type interface org.geoserver.wms.WMSInfo in workspace WorkspaceInfoImpl[test], available services were [WMTSInfoImpl[WMTS], WMSInfoImpl[WMS], WFSInfoImpl[WFS], WCSInfoImpl[WCS]]
2018-03-27 16:30:29,022 DEBUG [geotools.styling] - number of fts set 1
2018-03-27 16:30:29,508 DEBUG [wms.map] - Writing png image … done!
2018-03-27 16:30:29,508 DEBUG [geoserver.filters] - Not compressing output for mimetype: image/png
2018-03-27 16:30:29,508 DEBUG [resources.image] - Failed to clear rendered image adapters field to null. Not a problem per se, but if the finalizer thread is not fast enough, this might result in a OOM
java.lang.NoSuchFieldException: theImage
at java.lang.Class.getDeclaredField(Class.java:2070)
at org.geotools.resources.image.ImageUtilities.cleanField(ImageUtilities.java:1314)
at org.geotools.resources.image.ImageUtilities.disposeSinglePlanarImage(ImageUtilities.java:1292)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:814)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:822)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:822)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:798)
at org.geoserver.wms.RasterCleaner.disposeImage(RasterCleaner.java:88)
at org.geoserver.wms.RasterCleaner.disposeImages(RasterCleaner.java:79)
at org.geoserver.wms.RasterCleaner.finished(RasterCleaner.java:65)
at org.geoserver.ows.Dispatcher.fireFinishedCallback(Dispatcher.java:306)
at org.geoserver.ows.Dispatcher.handleRequestInternal(Dispatcher.java:282)
at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:174)

The Source Geoserver Logs look like this

2018-03-27 16:30:29,003 DEBUG [security.IncludeQueryStringAntPathRequestMatcher] - Matched Path: /gwc/service/wmts, QueryString: authkey=e18d97d7-b43e-4fd2-85c4-da9d0045542e?request=getTile&tilematrixset=EPSG%3A3857&TileRow=2063&service=WMTS&format=image%2Fpng&style=&TileCol=2467&version=1.0.0&layer=aerial%3AAERIAL_2015&TileMatrix=EPSG%3A3857%3A12& with /**
2018-03-27 16:30:29,003 DEBUG [geoserver.filters] - Creating a new http session inside the web UI (normal behavior)
java.lang.Exception: Full stack trace for the session creation path
at org.geoserver.filters.SessionDebugFilter$SessionDebugWrapper.getSession(SessionDebugFilter.java:92)
at org.geoserver.filters.SessionDebugFilter$SessionDebugWrapper.getSession(SessionDebugFilter.java:70)
at javax.servlet.http.HttpServletRequestWrapper.getSession(HttpServletRequestWrapper.java:240)
at org.geoserver.security.filter.GeoServerSecurityContextPersistenceFilter$1.doFilter(GeoServerSecurityContextPersistenceFilter.java:50)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at

Anyone has an idea how I can go about this?

Kind regards,
Steve Omondi


Check out the vibrant tech community on one of the world’s most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot_______________________________________________
Geoserver-users mailing list

Please make sure you read the following two resources before posting to this list:

If you want to request a feature or an improvement, also see this: https://github.com/geoserver/geoserver/wiki/Successfully-requesting-and-integrating-new-features-and-improvements-in-GeoServer

Geoserver-users@anonymised.comrge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-users

Ian Turton

So while I was looking at the resulting URL I notice the ? is put twice in the final URL before and after my authkey

http://host:port/geoserver/gwc/service/wmts**?authkey=e18d97d7-b43e-4fd2-85c4-da9d0045542e?**request=getTile

So I decided tou use admin Basic Authentication and I have turned off Connection Pooling as Ian suggested. Now it’s clear Authentication to getCapabilities is not happening successfuly despite the credential being correct.

With Authkey and Connection Pooling turned off;

Cascade URL: http:// host:port /geoserver/gwc/service/wmts?authkey=e18d97d7-b43e-4fd2-85c4-da9d0045542e

The Authkey used here is for a USer with full access to all the layers in the WMTS GetCapabilites returned by the source Geoserver

  • Loading tile wmts_6_39_31: http://host:port/geoserver/gwc/service/wmts?authkey=e18d97d7-b43e-4fd2-85c4-da9d0045542e?request=getTile&tilematrixset=EPSG%3A3857&TileRow=31&service=WMTS&format=image%2Fpng&style=&TileCol=39&version=1.0.0&layer=aerial%3ARAMANI_AERIAL&TileMatrix=EPSG%3A3857%3A6&
    03 Apr 13:12:14 DEBUG [wmts.client] - Tile image not yet loaded for tile wmts_6_39_31
    03 Apr 13:12:14 DEBUG [wmts.client] - URL is http:// host:port /geoserver/gwc/service/wmts?authkey=e18d97d7-b43e-4fd2-85c4-da9d0045542e?request=getTile&tilematrixset=EPSG%3A3857&TileRow=31&service=WMTS&format=image%2Fpng&style=&TileCol=39&version=1.0.0&layer=aerial%3ARAMANI_AERIAL&TileMatrix=EPSG%3A3857%3A6&
    03 Apr 13:12:14 ERROR [geotools.tile] - Failed to load image: http:// host:port /geoserver/gwc/service/wmts?authkey=e18d97d7-b43e-4fd2-85c4-da9d0045542e?request=getTile&tilematrixset=EPSG%3A3857&TileRow=31&service=WMTS&format=image%2Fpng&style=&TileCol=39&version=1.0.0&layer=aerial%3ARAMANI_AERIAL&TileMatrix=EPSG%3A3857%3A6&
    java.io.IOException: Connection returned code 403

image.png

image.png

image.png

···

On Tue, Apr 3, 2018 at 12:51 PM, Ian Turton <ijturton@anonymised.com> wrote:

It looks like the wmts server is not authenticating correctly - Error 403: “The server understood the request, but is refusing to fulfill it. Authorization will not help and the request SHOULD NOT be repeated.”

The only thing I can suggest is to turn http connection pooling off and try again.

If that doesn’t help you need to work out exactly what the server is expecting vs what GeoServer is sending (wireshark or suchlike may help here),

Ian

Kind regards,
Steve Omondi

On 3 April 2018 at 10:43, Steve Omondi <steve.omondi@anonymised.com8302…> wrote:

Anyone here has a clue how I can go about this ERROR.

More logs;

03 Apr 12:37:41 DEBUG [wmts.client] - Loading tile wmts_8_151_130: http://host:port/geoserver/gwc/service/wmts?authkey=e18d97d7-b43e-4fd2-85c4-da9d0045542e?request=getTile&tilematrixset=EPSG%3A3857&TileRow=130&service=WMTS&format=image%2Fpng&style=&TileCol=151&version=1.0.0&layer=aerial%3AAERIAL&TileMatrix=EPSG%3A3857%3A8&
03 Apr 12:37:41 DEBUG [wmts.client] - Tile image not yet loaded for tile wmts_8_151_130
03 Apr 12:37:41 DEBUG [wmts.client] - URL is http://host:port/geoserver/gwc/service/wmts?authkey=e18d97d7-b43e-4fd2-85c4-da9d0045542e?request=getTile&tilematrixset=EPSG%3A3857&TileRow=130&service=WMTS&format=image%2Fpng&style=&TileCol=151&version=1.0.0&layer=aerial%3AAERIAL&TileMatrix=EPSG%3A3857%3A8&
03 Apr 12:37:41 ERROR [geotools.tile] - Failed to load image: http://host:port/geoserver/gwc/service/wmts?authkey=e18d97d7-b43e-4fd2-85c4-da9d0045542e?request=getTile&tilematrixset=EPSG%3A3857&TileRow=130&service=WMTS&format=image%2Fpng&style=&TileCol=151&version=1.0.0&layer=aerial%3AAERIAL&TileMatrix=EPSG%3A3857%3A8&
java.io.IOException: Connection returned code 403
at org.geotools.data.wmts.client.WMTSTile.setupInputStream(WMTSTile.java:258)
at org.geotools.data.wmts.client.WMTSTile.doLoadImageTileImage(WMTSTile.java:231)
at org.geotools.data.wmts.client.WMTSTile.loadImageTileImage(WMTSTile.java:219)
at org.geotools.tile.Tile.getBufferedImage(Tile.java:182)
at org.geotools.map.WMTSCoverageReader.getTileImage(WMTSCoverageReader.java:378)
at org.geotools.map.WMTSCoverageReader.renderTile(WMTSCoverageReader.java:367)
at org.geotools.map.WMTSCoverageReader.renderTiles(WMTSCoverageReader.java:350)
at org.geotools.map.WMTSCoverageReader.getMap(WMTSCoverageReader.java:315)
at org.geotools.map.WMTSCoverageReader.read(WMTSCoverageReader.java:282)
at org.geotools.renderer.lite.gridcoverage2d.GridCoverageReaderHelper.readSingleCoverage(GridCoverageReaderHelper.java:549)
at org.geotools.renderer.lite.gridcoverage2d.GridCoverageReaderHelper.readCoverage(GridCoverageReaderHelper.java:184)
at org.geotools.renderer.lite.gridcoverage2d.GridCoverageRenderer.renderImage(GridCoverageRenderer.java:832)
at org.geotools.renderer.lite.gridcoverage2d.GridCoverageRenderer.renderImage(GridCoverageRenderer.java:804)
at org.geoserver.wms.map.RenderedImageMapOutputFormat.directRasterRender(RenderedImageMapOutputFormat.java:1015)
at org.geoserver.wms.map.RenderedImageMapOutputFormat.produceMap(RenderedImageMapOutputFormat.java:369)
at org.geoserver.wms.map.RenderedImageMapOutputFormat.produceMap(RenderedImageMapOutputFormat.java:286)
at org.geoserver.wms.map.RenderedImageMapOutputFormat.produceMap(RenderedImageMapOutputFormat.java:141)
at org.geoserver.wms.GetMap.executeInternal(GetMap.java:653)
at org.geoserver.wms.GetMap.run(GetMap.java:285)
at org.geoserver.wms.GetMap.run(GetMap.java:131)
at org.geoserver.wms.DefaultWebMapService.getMap(DefaultWebMapService.java:320)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:333)
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:190)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157)
at org.geoserver.kml.WebMapServiceKmlInterceptor.invoke(WebMapServiceKmlInterceptor.java:38)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
at org.geoserver.gwc.wms.CacheSeedingWebMapService.invoke(CacheSeedingWebMapService.java:62)
at org.geoserver.gwc.wms.CacheSeedingWebMapService.invoke(CacheSeedingWebMapService.java:36)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
at org.geoserver.gwc.wms.CachingWebMapService.invoke(CachingWebMapService.java:80)
at org.geoserver.gwc.wms.CachingWebMapService.invoke(CachingWebMapService.java:55)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
at org.geoserver.ows.util.RequestObjectLogger.invoke(RequestObjectLogger.java:55)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:213)
at com.sun.proxy.$Proxy73.getMap(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.geoserver.ows.Dispatcher.execute(Dispatcher.java:867)
at org.geoserver.ows.Dispatcher.handleRequestInternal(Dispatcher.java:270)
at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:174)
at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:50)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:963)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:897)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970)
at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:861)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:635)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:742)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.apache.catalina.filters.CorsFilter.handleNonCORS(CorsFilter.java:419)
at org.apache.catalina.filters.CorsFilter.doFilter(CorsFilter.java:169)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.ThreadLocalsCleanupFilter.doFilter(ThreadLocalsCleanupFilter.java:28)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:75)
at org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:231)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:71)
at org.geoserver.monitor.MonitorFilter.doFilter(MonitorFilter.java:144)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:71)
at org.geoserver.wms.animate.AnimatorFilter.doFilter(AnimatorFilter.java:71)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:71)
at org.geoserver.filters.SpringDelegatingFilter.doFilter(SpringDelegatingFilter.java:46)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.platform.AdvancedDispatchFilter.doFilter(AdvancedDispatchFilter.java:50)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:316)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:126)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:90)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:114)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerAnonymousAuthenticationFilter.doFilter(GeoServerAnonymousAuthenticationFilter.java:54)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilterInternal(BasicAuthenticationFilter.java:158)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.geoserver.security.filter.GeoServerBasicAuthenticationFilter.doFilter(GeoServerBasicAuthenticationFilter.java:84)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:91)
at org.geoserver.security.filter.GeoServerSecurityContextPersistenceFilter$1.doFilter(GeoServerSecurityContextPersistenceFilter.java:53)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:213)
at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:176)
at org.geoserver.security.GeoServerSecurityFilterChainProxy.doFilter(GeoServerSecurityFilterChainProxy.java:152)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:88)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.XFrameOptionsFilter.doFilter(XFrameOptionsFilter.java:89)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:42)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.SessionDebugFilter.doFilter(SessionDebugFilter.java:48)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.FlushSafeFilter.doFilter(FlushSafeFilter.java:44)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:197)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:198)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:478)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:80)
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:624)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:341)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:799)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:861)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1455)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
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)
03 Apr 12:37:41 DEBUG [lite.gridcoverage2d] - Applying Raster Symbolizer
03 Apr 12:37:41 TRACE [geotools.factory] - ENTRY (GridCoverageFactory)
03 Apr 12:37:41 TRACE [geotools.factory] - RETURN (GridCoverageFactory): found implementation Optional.
03 Apr 12:37:41 TRACE [geotools.factory] - ENTRY (GridCoverageFactory)
03 Apr 12:37:41 TRACE [geotools.factory] - RETURN (GridCoverageFactory): found implementation Optional.
03 Apr 12:37:41 TRACE [geotools.factory] - ENTRY (GridCoverageFactory)
03 Apr 12:37:41 TRACE [geotools.factory] - RETURN (GridCoverageFactory): found implementation Optional.
03 Apr 12:37:41 TRACE [geotools.factory] - ENTRY (GridCoverageFactory)
03 Apr 12:37:41 TRACE [geotools.factory] - RETURN (GridCoverageFactory): found implementation Optional.
03 Apr 12:37:41 TRACE [geotools.factory] - ENTRY (GridCoverageFactory)
03 Apr 12:37:41 TRACE [geotools.factory] - RETURN (GridCoverageFactory): found implementation Optional.
03 Apr 12:37:41 TRACE [geotools.factory] - ENTRY (GridCoverageFactory)
03 Apr 12:37:41 TRACE [geotools.factory] - RETURN (GridCoverageFactory): found implementation Optional.
03 Apr 12:37:41 TRACE [geotools.factory] - ENTRY (GridCoverageFactory)
03 Apr 12:37:41 TRACE [geotools.factory] - RETURN (GridCoverageFactory): found implementation Optional.
03 Apr 12:37:41 INFO [geoserver.wms] -
Request: getMap
Angle = 0.0
BaseUrl = http://ros-gs1:8180/geoserver/
Bbox = SRSEnvelope[32.113037109375 : 40.550537109375, -4.7296142578125 : 1.3238525390625]
BgColor = java.awt.Color[r=255,g=255,b=255]
Buffer = 0
CQLFilter = null
Crs = GEOGCS[“WGS 84”,
DATUM[“World Geodetic System 1984”,
SPHEROID[“WGS 84”, 6378137.0, 298.257223563, AUTHORITY[“EPSG”,“7030”]],
AUTHORITY[“EPSG”,“6326”]],
PRIMEM[“Greenwich”, 0.0, AUTHORITY[“EPSG”,“8901”]],
UNIT[“degree”, 0.017453292519943295],
AXIS[“Geodetic longitude”, EAST],
AXIS[“Geodetic latitude”, NORTH],
AUTHORITY[“EPSG”,“4326”]]
Elevation =
Env = {}
Exceptions = SE_XML
FeatureId = null
FeatureVersion = null
Filter = null
Filters = null
Format = image/png
FormatOptions = {}
Get = true
Height = 551
Interpolations =
Layers = [org.geoserver.wms.MapLayerInfo@anonymised.com]
MaxFeatures = null
Palette = null
RawKvp = {REQUEST=GetMap, FORMAT=image/png, SRS=EPSG:4326, BBOX=32.113037109375,-4.7296142578125,40.550537109375,1.3238525390625, VERSION=1.1.1, STYLES=, SERVICE=WMS, WIDTH=768, HEIGHT=551, TRANSPARENT=true, LAYERS=test:AERIAL}
RemoteOwsType = null
RemoteOwsURL = null
Request = GetMap
RequestCharset = UTF-8
ScaleMethod = null
Sld = null
SldBody = null
SldVersion = null
SortBy = null
SortByArrays = null
SRS = EPSG:4326
StartIndex = null
StyleBody = null
StyleFormat = sld
Styles = [StyleImpl[ name=raster]]
StyleUrl = null
StyleVersion = null
Tiled = false
TilesOrigin = null
Time =
Transparent = true
ValidateSchema = false
Version = 1.1.1
ViewParams = null
Width = 768
03 Apr 12:37:41 DEBUG [wms.map] - Writing png image …
03 Apr 12:37:41 DEBUG [config.impl] - Could not locate service of type interface org.geoserver.wms.WMSInfo in workspace WorkspaceInfoImpl[test], available services were [WMTSInfoImpl[WMTS], WMSInfoImpl[WMS], WFSInfoImpl[WFS], WCSInfoImpl[WCS]]
03 Apr 12:37:41 DEBUG [geotools.styling] - number of fts set 1
03 Apr 12:37:42 DEBUG [wms.map] - Writing png image … done!
03 Apr 12:37:42 DEBUG [geoserver.filters] - Not compressing output for mimetype: image/png
03 Apr 12:37:42 DEBUG [resources.image] - Failed to clear rendered image adapters field to null. Not a problem per se, but if the finalizer thread is not fast enough, this might result in a OOM
java.lang.NoSuchFieldException: theImage
at java.lang.Class.getDeclaredField(Class.java:2070)
at org.geotools.resources.image.ImageUtilities.cleanField(ImageUtilities.java:1314)
at org.geotools.resources.image.ImageUtilities.disposeSinglePlanarImage(ImageUtilities.java:1292)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:814)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:822)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:822)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:798)
at org.geoserver.wms.RasterCleaner.disposeImage(RasterCleaner.java:88)
at org.geoserver.wms.RasterCleaner.disposeImages(RasterCleaner.java:79)
at org.geoserver.wms.RasterCleaner.finished(RasterCleaner.java:65)
at org.geoserver.ows.Dispatcher.fireFinishedCallback(Dispatcher.java:306)
at org.geoserver.ows.Dispatcher.handleRequestInternal(Dispatcher.java:282)
at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:174)
at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:50)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:963)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:897)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970)
at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:861)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:635)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:742)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.apache.catalina.filters.CorsFilter.handleNonCORS(CorsFilter.java:419)
at org.apache.catalina.filters.CorsFilter.doFilter(CorsFilter.java:169)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.ThreadLocalsCleanupFilter.doFilter(ThreadLocalsCleanupFilter.java:28)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:75)
at org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:231)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:71)
at org.geoserver.monitor.MonitorFilter.doFilter(MonitorFilter.java:144)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:71)
at org.geoserver.wms.animate.AnimatorFilter.doFilter(AnimatorFilter.java:71)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:71)
at org.geoserver.filters.SpringDelegatingFilter.doFilter(SpringDelegatingFilter.java:46)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.platform.AdvancedDispatchFilter.doFilter(AdvancedDispatchFilter.java:50)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:316)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:126)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:90)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:114)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerAnonymousAuthenticationFilter.doFilter(GeoServerAnonymousAuthenticationFilter.java:54)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilterInternal(BasicAuthenticationFilter.java:158)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.geoserver.security.filter.GeoServerBasicAuthenticationFilter.doFilter(GeoServerBasicAuthenticationFilter.java:84)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:91)
at org.geoserver.security.filter.GeoServerSecurityContextPersistenceFilter$1.doFilter(GeoServerSecurityContextPersistenceFilter.java:53)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:213)
at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:176)
at org.geoserver.security.GeoServerSecurityFilterChainProxy.doFilter(GeoServerSecurityFilterChainProxy.java:152)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:88)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.XFrameOptionsFilter.doFilter(XFrameOptionsFilter.java:89)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:42)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.SessionDebugFilter.doFilter(SessionDebugFilter.java:48)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.FlushSafeFilter.doFilter(FlushSafeFilter.java:44)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:197)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:198)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:478)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:80)
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:624)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:341)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:799)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:861)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1455)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
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)
03 Apr 12:37:42 DEBUG [resources.image] - Failed to clear rendered image adapters field to null. Not a problem per se, but if the finalizer thread is not fast enough, this might result in a OOM
java.lang.NoSuchFieldException: theImage
at java.lang.Class.getDeclaredField(Class.java:2070)
at org.geotools.resources.image.ImageUtilities.cleanField(ImageUtilities.java:1314)
at org.geotools.resources.image.ImageUtilities.disposeSinglePlanarImage(ImageUtilities.java:1292)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:814)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:822)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:798)
at org.geoserver.wms.RasterCleaner.disposeImage(RasterCleaner.java:88)
at org.geoserver.wms.RasterCleaner.disposeImages(RasterCleaner.java:79)
at org.geoserver.wms.RasterCleaner.finished(RasterCleaner.java:65)
at org.geoserver.ows.Dispatcher.fireFinishedCallback(Dispatcher.java:306)
at org.geoserver.ows.Dispatcher.handleRequestInternal(Dispatcher.java:282)
at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:174)
at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:50)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:963)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:897)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970)
at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:861)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:635)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:742)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.apache.catalina.filters.CorsFilter.handleNonCORS(CorsFilter.java:419)
at org.apache.catalina.filters.CorsFilter.doFilter(CorsFilter.java:169)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.ThreadLocalsCleanupFilter.doFilter(ThreadLocalsCleanupFilter.java:28)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:75)
at org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:231)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:71)
at org.geoserver.monitor.MonitorFilter.doFilter(MonitorFilter.java:144)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:71)
at org.geoserver.wms.animate.AnimatorFilter.doFilter(AnimatorFilter.java:71)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:71)
at org.geoserver.filters.SpringDelegatingFilter.doFilter(SpringDelegatingFilter.java:46)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.platform.AdvancedDispatchFilter.doFilter(AdvancedDispatchFilter.java:50)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:316)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:126)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:90)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:114)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerAnonymousAuthenticationFilter.doFilter(GeoServerAnonymousAuthenticationFilter.java:54)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilterInternal(BasicAuthenticationFilter.java:158)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.geoserver.security.filter.GeoServerBasicAuthenticationFilter.doFilter(GeoServerBasicAuthenticationFilter.java:84)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:91)
at org.geoserver.security.filter.GeoServerSecurityContextPersistenceFilter$1.doFilter(GeoServerSecurityContextPersistenceFilter.java:53)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:213)
at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:176)
at org.geoserver.security.GeoServerSecurityFilterChainProxy.doFilter(GeoServerSecurityFilterChainProxy.java:152)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:88)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.XFrameOptionsFilter.doFilter(XFrameOptionsFilter.java:89)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:42)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.SessionDebugFilter.doFilter(SessionDebugFilter.java:48)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.FlushSafeFilter.doFilter(FlushSafeFilter.java:44)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:197)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:198)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:478)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:80)
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:624)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:341)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:799)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:861)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1455)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
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)
03 Apr 12:37:42 DEBUG [monitor.OpenSessionInViewFilter] - Closing single Hibernate Session in OpenSessionInViewFilter
03

Ian Turton

Kind regards,
Steve Omondi

On Wed, Mar 28, 2018 at 8:57 AM, Steve Omondi <steve.omondi@anonymised.com> wrote:

Can you request tiles from the source directly?

Yes. I can use the Tile in the Source Geoserver in Openlayers however not in QGIS.

When I tried the WMTS from source in QGIS I can getCapabilities succesfully but the layer is not loaded in the Map Canvas.

Next check if the requests being made work in the browser.

Yes the request works in the broiwser but retuns the black image still

Kind regards,
Steve Omondi

On Tue, Mar 27, 2018 at 10:16 PM, Ian Turton <ijturton@anonymised.com> wrote:

Can you request tiles from the source directly? Next check if the requests being made work in the browser.

Ian

On Tue, 27 Mar 2018, 14:46 Steve Omondi, <steve.omondi@anonymised.com.8302…> wrote:

Hi guys,

Does anyone have experience with Cascading secured WMTS Services in Geoserver?

I can seem to get it to work. WMS cascading work perfectly, but I want to cascade WMTS instead.

I’m using Authkey for Authentication in the Origin Geoserver (i.e. WMTS Source Geoserver).

When I preview in the Cascaded Layer as WMS I get this

Here are the Logs
2018-03-27 16:30:29,018 DEBUG [wms.map] - Writing png image …
2018-03-27 16:30:29,022 DEBUG [config.impl] - Could not locate service of type interface org.geoserver.wms.WMSInfo in workspace WorkspaceInfoImpl[test], available services were [WMTSInfoImpl[WMTS], WMSInfoImpl[WMS], WFSInfoImpl[WFS], WCSInfoImpl[WCS]]
2018-03-27 16:30:29,022 DEBUG [geotools.styling] - number of fts set 1
2018-03-27 16:30:29,508 DEBUG [wms.map] - Writing png image … done!
2018-03-27 16:30:29,508 DEBUG [geoserver.filters] - Not compressing output for mimetype: image/png
2018-03-27 16:30:29,508 DEBUG [resources.image] - Failed to clear rendered image adapters field to null. Not a problem per se, but if the finalizer thread is not fast enough, this might result in a OOM
java.lang.NoSuchFieldException: theImage
at java.lang.Class.getDeclaredField(Class.java:2070)
at org.geotools.resources.image.ImageUtilities.cleanField(ImageUtilities.java:1314)
at org.geotools.resources.image.ImageUtilities.disposeSinglePlanarImage(ImageUtilities.java:1292)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:814)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:822)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:822)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:798)
at org.geoserver.wms.RasterCleaner.disposeImage(RasterCleaner.java:88)
at org.geoserver.wms.RasterCleaner.disposeImages(RasterCleaner.java:79)
at org.geoserver.wms.RasterCleaner.finished(RasterCleaner.java:65)
at org.geoserver.ows.Dispatcher.fireFinishedCallback(Dispatcher.java:306)
at org.geoserver.ows.Dispatcher.handleRequestInternal(Dispatcher.java:282)
at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:174)

The Source Geoserver Logs look like this

2018-03-27 16:30:29,003 DEBUG [security.IncludeQueryStringAntPathRequestMatcher] - Matched Path: /gwc/service/wmts, QueryString: authkey=e18d97d7-b43e-4fd2-85c4-da9d0045542e?request=getTile&tilematrixset=EPSG%3A3857&TileRow=2063&service=WMTS&format=image%2Fpng&style=&TileCol=2467&version=1.0.0&layer=aerial%3AAERIAL_2015&TileMatrix=EPSG%3A3857%3A12& with /**
2018-03-27 16:30:29,003 DEBUG [geoserver.filters] - Creating a new http session inside the web UI (normal behavior)
java.lang.Exception: Full stack trace for the session creation path
at org.geoserver.filters.SessionDebugFilter$SessionDebugWrapper.getSession(SessionDebugFilter.java:92)
at org.geoserver.filters.SessionDebugFilter$SessionDebugWrapper.getSession(SessionDebugFilter.java:70)
at javax.servlet.http.HttpServletRequestWrapper.getSession(HttpServletRequestWrapper.java:240)
at org.geoserver.security.filter.GeoServerSecurityContextPersistenceFilter$1.doFilter(GeoServerSecurityContextPersistenceFilter.java:50)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at

Anyone has an idea how I can go about this?

Kind regards,
Steve Omondi


Check out the vibrant tech community on one of the world’s most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot_______________________________________________
Geoserver-users mailing list

Please make sure you read the following two resources before posting to this list:

If you want to request a feature or an improvement, also see this: https://github.com/geoserver/geoserver/wiki/Successfully-requesting-and-integrating-new-features-and-improvements-in-GeoServer

Geoserver-users@anonymised.comrge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-users

That looks like a bug in the URL formation code, can you raise an issue (http://geoserver.org/issues/) and assign it to me and I’ll have a look.

Ian

image.png

image.png

···

On 3 April 2018 at 11:17, Steve Omondi <steve.omondi@anonymised.com> wrote:

So while I was looking at the resulting URL I notice the ? is put twice in the final URL before and after my authkey

http://host:port/geoserver/gwc/service/wmts**?authkey=e18d97d7-b43e-4fd2-85c4-da9d0045542e?**request=getTile

So I decided tou use admin Basic Authentication and I have turned off Connection Pooling as Ian suggested. Now it’s clear Authentication to getCapabilities is not happening successfuly despite the credential being correct.

With Authkey and Connection Pooling turned off;

Cascade URL: http:// host:port /geoserver/gwc/service/wmts?authkey=e18d97d7-b43e-4fd2-85c4-da9d0045542e

The Authkey used here is for a USer with full access to all the layers in the WMTS GetCapabilites returned by the source Geoserver

  • Loading tile wmts_6_39_31: http://host:port/geoserver/gwc/service/wmts?authkey=e18d97d7-b43e-4fd2-85c4-da9d0045542e?request=getTile&tilematrixset=EPSG%3A3857&TileRow=31&service=WMTS&format=image%2Fpng&style=&TileCol=39&version=1.0.0&layer=aerial%3ARAMANI_AERIAL&TileMatrix=EPSG%3A3857%3A6&
    03 Apr 13:12:14 DEBUG [wmts.client] - Tile image not yet loaded for tile wmts_6_39_31
    03 Apr 13:12:14 DEBUG [wmts.client] - URL is http:// host:port /geoserver/gwc/service/wmts?authkey=e18d97d7-b43e-4fd2-85c4-da9d0045542e?request=getTile&tilematrixset=EPSG%3A3857&TileRow=31&service=WMTS&format=image%2Fpng&style=&TileCol=39&version=1.0.0&layer=aerial%3ARAMANI_AERIAL&TileMatrix=EPSG%3A3857%3A6&
    03 Apr 13:12:14 ERROR [geotools.tile] - Failed to load image: http:// host:port /geoserver/gwc/service/wmts?authkey=e18d97d7-b43e-4fd2-85c4-da9d0045542e?request=getTile&tilematrixset=EPSG%3A3857&TileRow=31&service=WMTS&format=image%2Fpng&style=&TileCol=39&version=1.0.0&layer=aerial%3ARAMANI_AERIAL&TileMatrix=EPSG%3A3857%3A6&
    java.io.IOException: Connection returned code 403

Kind regards,
Steve Omondi

On Tue, Apr 3, 2018 at 12:51 PM, Ian Turton <ijturton@anonymised.com> wrote:

It looks like the wmts server is not authenticating correctly - Error 403: “The server understood the request, but is refusing to fulfill it. Authorization will not help and the request SHOULD NOT be repeated.”

The only thing I can suggest is to turn http connection pooling off and try again.

If that doesn’t help you need to work out exactly what the server is expecting vs what GeoServer is sending (wireshark or suchlike may help here),

Ian

On 3 April 2018 at 10:43, Steve Omondi <steve.omondi@anonymised.com> wrote:

Anyone here has a clue how I can go about this ERROR.

More logs;

03 Apr 12:37:41 DEBUG [wmts.client] - Loading tile wmts_8_151_130: http://host:port/geoserver/gwc/service/wmts?authkey=e18d97d7-b43e-4fd2-85c4-da9d0045542e?request=getTile&tilematrixset=EPSG%3A3857&TileRow=130&service=WMTS&format=image%2Fpng&style=&TileCol=151&version=1.0.0&layer=aerial%3AAERIAL&TileMatrix=EPSG%3A3857%3A8&
03 Apr 12:37:41 DEBUG [wmts.client] - Tile image not yet loaded for tile wmts_8_151_130
03 Apr 12:37:41 DEBUG [wmts.client] - URL is http://host:port/geoserver/gwc/service/wmts?authkey=e18d97d7-b43e-4fd2-85c4-da9d0045542e?request=getTile&tilematrixset=EPSG%3A3857&TileRow=130&service=WMTS&format=image%2Fpng&style=&TileCol=151&version=1.0.0&layer=aerial%3AAERIAL&TileMatrix=EPSG%3A3857%3A8&
03 Apr 12:37:41 ERROR [geotools.tile] - Failed to load image: http://host:port/geoserver/gwc/service/wmts?authkey=e18d97d7-b43e-4fd2-85c4-da9d0045542e?request=getTile&tilematrixset=EPSG%3A3857&TileRow=130&service=WMTS&format=image%2Fpng&style=&TileCol=151&version=1.0.0&layer=aerial%3AAERIAL&TileMatrix=EPSG%3A3857%3A8&
java.io.IOException: Connection returned code 403
at org.geotools.data.wmts.client.WMTSTile.setupInputStream(WMTSTile.java:258)
at org.geotools.data.wmts.client.WMTSTile.doLoadImageTileImage(WMTSTile.java:231)
at org.geotools.data.wmts.client.WMTSTile.loadImageTileImage(WMTSTile.java:219)
at org.geotools.tile.Tile.getBufferedImage(Tile.java:182)
at org.geotools.map.WMTSCoverageReader.getTileImage(WMTSCoverageReader.java:378)
at org.geotools.map.WMTSCoverageReader.renderTile(WMTSCoverageReader.java:367)
at org.geotools.map.WMTSCoverageReader.renderTiles(WMTSCoverageReader.java:350)
at org.geotools.map.WMTSCoverageReader.getMap(WMTSCoverageReader.java:315)
at org.geotools.map.WMTSCoverageReader.read(WMTSCoverageReader.java:282)
at org.geotools.renderer.lite.gridcoverage2d.GridCoverageReaderHelper.readSingleCoverage(GridCoverageReaderHelper.java:549)
at org.geotools.renderer.lite.gridcoverage2d.GridCoverageReaderHelper.readCoverage(GridCoverageReaderHelper.java:184)
at org.geotools.renderer.lite.gridcoverage2d.GridCoverageRenderer.renderImage(GridCoverageRenderer.java:832)
at org.geotools.renderer.lite.gridcoverage2d.GridCoverageRenderer.renderImage(GridCoverageRenderer.java:804)
at org.geoserver.wms.map.RenderedImageMapOutputFormat.directRasterRender(RenderedImageMapOutputFormat.java:1015)
at org.geoserver.wms.map.RenderedImageMapOutputFormat.produceMap(RenderedImageMapOutputFormat.java:369)
at org.geoserver.wms.map.RenderedImageMapOutputFormat.produceMap(RenderedImageMapOutputFormat.java:286)
at org.geoserver.wms.map.RenderedImageMapOutputFormat.produceMap(RenderedImageMapOutputFormat.java:141)
at org.geoserver.wms.GetMap.executeInternal(GetMap.java:653)
at org.geoserver.wms.GetMap.run(GetMap.java:285)
at org.geoserver.wms.GetMap.run(GetMap.java:131)
at org.geoserver.wms.DefaultWebMapService.getMap(DefaultWebMapService.java:320)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:333)
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:190)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157)
at org.geoserver.kml.WebMapServiceKmlInterceptor.invoke(WebMapServiceKmlInterceptor.java:38)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
at org.geoserver.gwc.wms.CacheSeedingWebMapService.invoke(CacheSeedingWebMapService.java:62)
at org.geoserver.gwc.wms.CacheSeedingWebMapService.invoke(CacheSeedingWebMapService.java:36)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
at org.geoserver.gwc.wms.CachingWebMapService.invoke(CachingWebMapService.java:80)
at org.geoserver.gwc.wms.CachingWebMapService.invoke(CachingWebMapService.java:55)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
at org.geoserver.ows.util.RequestObjectLogger.invoke(RequestObjectLogger.java:55)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:213)
at com.sun.proxy.$Proxy73.getMap(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.geoserver.ows.Dispatcher.execute(Dispatcher.java:867)
at org.geoserver.ows.Dispatcher.handleRequestInternal(Dispatcher.java:270)
at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:174)
at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:50)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:963)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:897)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970)
at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:861)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:635)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:742)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.apache.catalina.filters.CorsFilter.handleNonCORS(CorsFilter.java:419)
at org.apache.catalina.filters.CorsFilter.doFilter(CorsFilter.java:169)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.ThreadLocalsCleanupFilter.doFilter(ThreadLocalsCleanupFilter.java:28)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:75)
at org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:231)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:71)
at org.geoserver.monitor.MonitorFilter.doFilter(MonitorFilter.java:144)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:71)
at org.geoserver.wms.animate.AnimatorFilter.doFilter(AnimatorFilter.java:71)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:71)
at org.geoserver.filters.SpringDelegatingFilter.doFilter(SpringDelegatingFilter.java:46)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.platform.AdvancedDispatchFilter.doFilter(AdvancedDispatchFilter.java:50)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:316)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:126)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:90)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:114)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerAnonymousAuthenticationFilter.doFilter(GeoServerAnonymousAuthenticationFilter.java:54)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilterInternal(BasicAuthenticationFilter.java:158)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.geoserver.security.filter.GeoServerBasicAuthenticationFilter.doFilter(GeoServerBasicAuthenticationFilter.java:84)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:91)
at org.geoserver.security.filter.GeoServerSecurityContextPersistenceFilter$1.doFilter(GeoServerSecurityContextPersistenceFilter.java:53)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:213)
at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:176)
at org.geoserver.security.GeoServerSecurityFilterChainProxy.doFilter(GeoServerSecurityFilterChainProxy.java:152)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:88)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.XFrameOptionsFilter.doFilter(XFrameOptionsFilter.java:89)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:42)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.SessionDebugFilter.doFilter(SessionDebugFilter.java:48)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.FlushSafeFilter.doFilter(FlushSafeFilter.java:44)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:197)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:198)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:478)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:80)
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:624)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:341)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:799)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:861)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1455)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
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)
03 Apr 12:37:41 DEBUG [lite.gridcoverage2d] - Applying Raster Symbolizer
03 Apr 12:37:41 TRACE [geotools.factory] - ENTRY (GridCoverageFactory)
03 Apr 12:37:41 TRACE [geotools.factory] - RETURN (GridCoverageFactory): found implementation Optional.
03 Apr 12:37:41 TRACE [geotools.factory] - ENTRY (GridCoverageFactory)
03 Apr 12:37:41 TRACE [geotools.factory] - RETURN (GridCoverageFactory): found implementation Optional.
03 Apr 12:37:41 TRACE [geotools.factory] - ENTRY (GridCoverageFactory)
03 Apr 12:37:41 TRACE [geotools.factory] - RETURN (GridCoverageFactory): found implementation Optional.
03 Apr 12:37:41 TRACE [geotools.factory] - ENTRY (GridCoverageFactory)
03 Apr 12:37:41 TRACE [geotools.factory] - RETURN (GridCoverageFactory): found implementation Optional.
03 Apr 12:37:41 TRACE [geotools.factory] - ENTRY (GridCoverageFactory)
03 Apr 12:37:41 TRACE [geotools.factory] - RETURN (GridCoverageFactory): found implementation Optional.
03 Apr 12:37:41 TRACE [geotools.factory] - ENTRY (GridCoverageFactory)
03 Apr 12:37:41 TRACE [geotools.factory] - RETURN (GridCoverageFactory): found implementation Optional.
03 Apr 12:37:41 TRACE [geotools.factory] - ENTRY (GridCoverageFactory)
03 Apr 12:37:41 TRACE [geotools.factory] - RETURN (GridCoverageFactory): found implementation Optional.
03 Apr 12:37:41 INFO [geoserver.wms] -
Request: getMap
Angle = 0.0
BaseUrl = http://ros-gs1:8180/geoserver/
Bbox = SRSEnvelope[32.113037109375 : 40.550537109375, -4.7296142578125 : 1.3238525390625]
BgColor = java.awt.Color[r=255,g=255,b=255]
Buffer = 0
CQLFilter = null
Crs = GEOGCS[“WGS 84”,
DATUM[“World Geodetic System 1984”,
SPHEROID[“WGS 84”, 6378137.0, 298.257223563, AUTHORITY[“EPSG”,“7030”]],
AUTHORITY[“EPSG”,“6326”]],
PRIMEM[“Greenwich”, 0.0, AUTHORITY[“EPSG”,“8901”]],
UNIT[“degree”, 0.017453292519943295],
AXIS[“Geodetic longitude”, EAST],
AXIS[“Geodetic latitude”, NORTH],
AUTHORITY[“EPSG”,“4326”]]
Elevation =
Env = {}
Exceptions = SE_XML
FeatureId = null
FeatureVersion = null
Filter = null
Filters = null
Format = image/png
FormatOptions = {}
Get = true
Height = 551
Interpolations =
Layers = [org.geoserver.wms.MapLayerInfo@anonymised.com]
MaxFeatures = null
Palette = null
RawKvp = {REQUEST=GetMap, FORMAT=image/png, SRS=EPSG:4326, BBOX=32.113037109375,-4.7296142578125,40.550537109375,1.3238525390625, VERSION=1.1.1, STYLES=, SERVICE=WMS, WIDTH=768, HEIGHT=551, TRANSPARENT=true, LAYERS=test:AERIAL}
RemoteOwsType = null
RemoteOwsURL = null
Request = GetMap
RequestCharset = UTF-8
ScaleMethod = null
Sld = null
SldBody = null
SldVersion = null
SortBy = null
SortByArrays = null
SRS = EPSG:4326
StartIndex = null
StyleBody = null
StyleFormat = sld
Styles = [StyleImpl[ name=raster]]
StyleUrl = null
StyleVersion = null
Tiled = false
TilesOrigin = null
Time =
Transparent = true
ValidateSchema = false
Version = 1.1.1
ViewParams = null
Width = 768
03 Apr 12:37:41 DEBUG [wms.map] - Writing png image …
03 Apr 12:37:41 DEBUG [config.impl] - Could not locate service of type interface org.geoserver.wms.WMSInfo in workspace WorkspaceInfoImpl[test], available services were [WMTSInfoImpl[WMTS], WMSInfoImpl[WMS], WFSInfoImpl[WFS], WCSInfoImpl[WCS]]
03 Apr 12:37:41 DEBUG [geotools.styling] - number of fts set 1
03 Apr 12:37:42 DEBUG [wms.map] - Writing png image … done!
03 Apr 12:37:42 DEBUG [geoserver.filters] - Not compressing output for mimetype: image/png
03 Apr 12:37:42 DEBUG [resources.image] - Failed to clear rendered image adapters field to null. Not a problem per se, but if the finalizer thread is not fast enough, this might result in a OOM
java.lang.NoSuchFieldException: theImage
at java.lang.Class.getDeclaredField(Class.java:2070)
at org.geotools.resources.image.ImageUtilities.cleanField(ImageUtilities.java:1314)
at org.geotools.resources.image.ImageUtilities.disposeSinglePlanarImage(ImageUtilities.java:1292)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:814)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:822)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:822)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:798)
at org.geoserver.wms.RasterCleaner.disposeImage(RasterCleaner.java:88)
at org.geoserver.wms.RasterCleaner.disposeImages(RasterCleaner.java:79)
at org.geoserver.wms.RasterCleaner.finished(RasterCleaner.java:65)
at org.geoserver.ows.Dispatcher.fireFinishedCallback(Dispatcher.java:306)
at org.geoserver.ows.Dispatcher.handleRequestInternal(Dispatcher.java:282)
at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:174)
at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:50)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:963)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:897)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970)
at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:861)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:635)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:742)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.apache.catalina.filters.CorsFilter.handleNonCORS(CorsFilter.java:419)
at org.apache.catalina.filters.CorsFilter.doFilter(CorsFilter.java:169)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.ThreadLocalsCleanupFilter.doFilter(ThreadLocalsCleanupFilter.java:28)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:75)
at org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:231)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:71)
at org.geoserver.monitor.MonitorFilter.doFilter(MonitorFilter.java:144)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:71)
at org.geoserver.wms.animate.AnimatorFilter.doFilter(AnimatorFilter.java:71)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:71)
at org.geoserver.filters.SpringDelegatingFilter.doFilter(SpringDelegatingFilter.java:46)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.platform.AdvancedDispatchFilter.doFilter(AdvancedDispatchFilter.java:50)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:316)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:126)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:90)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:114)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerAnonymousAuthenticationFilter.doFilter(GeoServerAnonymousAuthenticationFilter.java:54)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilterInternal(BasicAuthenticationFilter.java:158)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.geoserver.security.filter.GeoServerBasicAuthenticationFilter.doFilter(GeoServerBasicAuthenticationFilter.java:84)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:91)
at org.geoserver.security.filter.GeoServerSecurityContextPersistenceFilter$1.doFilter(GeoServerSecurityContextPersistenceFilter.java:53)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:213)
at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:176)
at org.geoserver.security.GeoServerSecurityFilterChainProxy.doFilter(GeoServerSecurityFilterChainProxy.java:152)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:88)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.XFrameOptionsFilter.doFilter(XFrameOptionsFilter.java:89)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:42)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.SessionDebugFilter.doFilter(SessionDebugFilter.java:48)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.FlushSafeFilter.doFilter(FlushSafeFilter.java:44)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:197)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:198)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:478)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:80)
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:624)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:341)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:799)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:861)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1455)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
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)
03 Apr 12:37:42 DEBUG [resources.image] - Failed to clear rendered image adapters field to null. Not a problem per se, but if the finalizer thread is not fast enough, this might result in a OOM
java.lang.NoSuchFieldException: theImage
at java.lang.Class.getDeclaredField(Class.java:2070)
at org.geotools.resources.image.ImageUtilities.cleanField(ImageUtilities.java:1314)
at org.geotools.resources.image.ImageUtilities.disposeSinglePlanarImage(ImageUtilities.java:1292)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:814)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:822)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:798)
at org.geoserver.wms.RasterCleaner.disposeImage(RasterCleaner.java:88)
at org.geoserver.wms.RasterCleaner.disposeImages(RasterCleaner.java:79)
at org.geoserver.wms.RasterCleaner.finished(RasterCleaner.java:65)
at org.geoserver.ows.Dispatcher.fireFinishedCallback(Dispatcher.java:306)
at org.geoserver.ows.Dispatcher.handleRequestInternal(Dispatcher.java:282)
at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:174)
at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:50)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:963)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:897)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970)
at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:861)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:635)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:742)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.apache.catalina.filters.CorsFilter.handleNonCORS(CorsFilter.java:419)
at org.apache.catalina.filters.CorsFilter.doFilter(CorsFilter.java:169)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.ThreadLocalsCleanupFilter.doFilter(ThreadLocalsCleanupFilter.java:28)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:75)
at org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:231)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:71)
at org.geoserver.monitor.MonitorFilter.doFilter(MonitorFilter.java:144)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:71)
at org.geoserver.wms.animate.AnimatorFilter.doFilter(AnimatorFilter.java:71)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:71)
at org.geoserver.filters.SpringDelegatingFilter.doFilter(SpringDelegatingFilter.java:46)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.platform.AdvancedDispatchFilter.doFilter(AdvancedDispatchFilter.java:50)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:316)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:126)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:90)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:114)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerAnonymousAuthenticationFilter.doFilter(GeoServerAnonymousAuthenticationFilter.java:54)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilterInternal(BasicAuthenticationFilter.java:158)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.geoserver.security.filter.GeoServerBasicAuthenticationFilter.doFilter(GeoServerBasicAuthenticationFilter.java:84)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:91)
at org.geoserver.security.filter.GeoServerSecurityContextPersistenceFilter$1.doFilter(GeoServerSecurityContextPersistenceFilter.java:53)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:213)
at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:176)
at org.geoserver.security.GeoServerSecurityFilterChainProxy.doFilter(GeoServerSecurityFilterChainProxy.java:152)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:88)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.XFrameOptionsFilter.doFilter(XFrameOptionsFilter.java:89)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:42)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.SessionDebugFilter.doFilter(SessionDebugFilter.java:48)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.FlushSafeFilter.doFilter(FlushSafeFilter.java:44)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:197)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:198)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:478)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:80)
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:624)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:341)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:799)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:861)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1455)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
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)
03 Apr 12:37:42 DEBUG [monitor.OpenSessionInViewFilter] - Closing single Hibernate Session in OpenSessionInViewFilter
03

Ian Turton

Kind regards,
Steve Omondi

On Wed, Mar 28, 2018 at 8:57 AM, Steve Omondi <steve.omondi@anonymised.com> wrote:

Can you request tiles from the source directly?

Yes. I can use the Tile in the Source Geoserver in Openlayers however not in QGIS.

When I tried the WMTS from source in QGIS I can getCapabilities succesfully but the layer is not loaded in the Map Canvas.

Next check if the requests being made work in the browser.

Yes the request works in the broiwser but retuns the black image still

Kind regards,
Steve Omondi

On Tue, Mar 27, 2018 at 10:16 PM, Ian Turton <ijturton@anonymised.com> wrote:

Can you request tiles from the source directly? Next check if the requests being made work in the browser.

Ian

On Tue, 27 Mar 2018, 14:46 Steve Omondi, <steve.omondi@anonymised.com> wrote:

Hi guys,

Does anyone have experience with Cascading secured WMTS Services in Geoserver?

I can seem to get it to work. WMS cascading work perfectly, but I want to cascade WMTS instead.

I’m using Authkey for Authentication in the Origin Geoserver (i.e. WMTS Source Geoserver).

When I preview in the Cascaded Layer as WMS I get this

Here are the Logs
2018-03-27 16:30:29,018 DEBUG [wms.map] - Writing png image …
2018-03-27 16:30:29,022 DEBUG [config.impl] - Could not locate service of type interface org.geoserver.wms.WMSInfo in workspace WorkspaceInfoImpl[test], available services were [WMTSInfoImpl[WMTS], WMSInfoImpl[WMS], WFSInfoImpl[WFS], WCSInfoImpl[WCS]]
2018-03-27 16:30:29,022 DEBUG [geotools.styling] - number of fts set 1
2018-03-27 16:30:29,508 DEBUG [wms.map] - Writing png image … done!
2018-03-27 16:30:29,508 DEBUG [geoserver.filters] - Not compressing output for mimetype: image/png
2018-03-27 16:30:29,508 DEBUG [resources.image] - Failed to clear rendered image adapters field to null. Not a problem per se, but if the finalizer thread is not fast enough, this might result in a OOM
java.lang.NoSuchFieldException: theImage
at java.lang.Class.getDeclaredField(Class.java:2070)
at org.geotools.resources.image.ImageUtilities.cleanField(ImageUtilities.java:1314)
at org.geotools.resources.image.ImageUtilities.disposeSinglePlanarImage(ImageUtilities.java:1292)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:814)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:822)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:822)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:798)
at org.geoserver.wms.RasterCleaner.disposeImage(RasterCleaner.java:88)
at org.geoserver.wms.RasterCleaner.disposeImages(RasterCleaner.java:79)
at org.geoserver.wms.RasterCleaner.finished(RasterCleaner.java:65)
at org.geoserver.ows.Dispatcher.fireFinishedCallback(Dispatcher.java:306)
at org.geoserver.ows.Dispatcher.handleRequestInternal(Dispatcher.java:282)
at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:174)

The Source Geoserver Logs look like this

2018-03-27 16:30:29,003 DEBUG [security.IncludeQueryStringAntPathRequestMatcher] - Matched Path: /gwc/service/wmts, QueryString: authkey=e18d97d7-b43e-4fd2-85c4-da9d0045542e?request=getTile&tilematrixset=EPSG%3A3857&TileRow=2063&service=WMTS&format=image%2Fpng&style=&TileCol=2467&version=1.0.0&layer=aerial%3AAERIAL_2015&TileMatrix=EPSG%3A3857%3A12& with /**
2018-03-27 16:30:29,003 DEBUG [geoserver.filters] - Creating a new http session inside the web UI (normal behavior)
java.lang.Exception: Full stack trace for the session creation path
at org.geoserver.filters.SessionDebugFilter$SessionDebugWrapper.getSession(SessionDebugFilter.java:92)
at org.geoserver.filters.SessionDebugFilter$SessionDebugWrapper.getSession(SessionDebugFilter.java:70)
at javax.servlet.http.HttpServletRequestWrapper.getSession(HttpServletRequestWrapper.java:240)
at org.geoserver.security.filter.GeoServerSecurityContextPersistenceFilter$1.doFilter(GeoServerSecurityContextPersistenceFilter.java:50)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at

Anyone has an idea how I can go about this?

Kind regards,
Steve Omondi


Check out the vibrant tech community on one of the world’s most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot_______________________________________________
Geoserver-users mailing list

Please make sure you read the following two resources before posting to this list:

If you want to request a feature or an improvement, also see this: https://github.com/geoserver/geoserver/wiki/Successfully-requesting-and-integrating-new-features-and-improvements-in-GeoServer

Geoserver-users@anonymised.comrge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-users

Ian Turton

Alright.

image.png

image.png

image.png

image.png

···

On Tue, Apr 3, 2018 at 1:40 PM, Ian Turton <ijturton@anonymised.com> wrote:

That looks like a bug in the URL formation code, can you raise an issue (http://geoserver.org/issues/) and assign it to me and I’ll have a look.

Ian

Kind regards,
Steve Omondi

On 3 April 2018 at 11:17, Steve Omondi <steve.omondi@anonymised.com> wrote:

So while I was looking at the resulting URL I notice the ? is put twice in the final URL before and after my authkey

http://host:port/geoserver/gwc/service/wmts**?authkey=e18d97d7-b43e-4fd2-85c4-da9d0045542e?**request=getTile

So I decided tou use admin Basic Authentication and I have turned off Connection Pooling as Ian suggested. Now it’s clear Authentication to getCapabilities is not happening successfuly despite the credential being correct.

With Authkey and Connection Pooling turned off;

Cascade URL: http:// host:port /geoserver/gwc/service/wmts?authkey=e18d97d7-b43e-4fd2-85c4-da9d0045542e

The Authkey used here is for a USer with full access to all the layers in the WMTS GetCapabilites returned by the source Geoserver

  • Loading tile wmts_6_39_31: http://host:port/geoserver/gwc/service/wmts?authkey=e18d97d7-b43e-4fd2-85c4-da9d0045542e?request=getTile&tilematrixset=EPSG%3A3857&TileRow=31&service=WMTS&format=image%2Fpng&style=&TileCol=39&version=1.0.0&layer=aerial%3ARAMANI_AERIAL&TileMatrix=EPSG%3A3857%3A6&
    03 Apr 13:12:14 DEBUG [wmts.client] - Tile image not yet loaded for tile wmts_6_39_31
    03 Apr 13:12:14 DEBUG [wmts.client] - URL is http:// host:port /geoserver/gwc/service/wmts?authkey=e18d97d7-b43e-4fd2-85c4-da9d0045542e?request=getTile&tilematrixset=EPSG%3A3857&TileRow=31&service=WMTS&format=image%2Fpng&style=&TileCol=39&version=1.0.0&layer=aerial%3ARAMANI_AERIAL&TileMatrix=EPSG%3A3857%3A6&
    03 Apr 13:12:14 ERROR [geotools.tile] - Failed to load image: http:// host:port /geoserver/gwc/service/wmts?authkey=e18d97d7-b43e-4fd2-85c4-da9d0045542e?request=getTile&tilematrixset=EPSG%3A3857&TileRow=31&service=WMTS&format=image%2Fpng&style=&TileCol=39&version=1.0.0&layer=aerial%3ARAMANI_AERIAL&TileMatrix=EPSG%3A3857%3A6&
    java.io.IOException: Connection returned code 403

Ian Turton

Kind regards,
Steve Omondi

On Tue, Apr 3, 2018 at 12:51 PM, Ian Turton <ijturton@anonymised.com> wrote:

It looks like the wmts server is not authenticating correctly - Error 403: “The server understood the request, but is refusing to fulfill it. Authorization will not help and the request SHOULD NOT be repeated.”

The only thing I can suggest is to turn http connection pooling off and try again.

If that doesn’t help you need to work out exactly what the server is expecting vs what GeoServer is sending (wireshark or suchlike may help here),

Ian

On 3 April 2018 at 10:43, Steve Omondi <steve.omondi@anonymised.com> wrote:

Anyone here has a clue how I can go about this ERROR.

More logs;

03 Apr 12:37:41 DEBUG [wmts.client] - Loading tile wmts_8_151_130: http://host:port/geoserver/gwc/service/wmts?authkey=e18d97d7-b43e-4fd2-85c4-da9d0045542e?request=getTile&tilematrixset=EPSG%3A3857&TileRow=130&service=WMTS&format=image%2Fpng&style=&TileCol=151&version=1.0.0&layer=aerial%3AAERIAL&TileMatrix=EPSG%3A3857%3A8&
03 Apr 12:37:41 DEBUG [wmts.client] - Tile image not yet loaded for tile wmts_8_151_130
03 Apr 12:37:41 DEBUG [wmts.client] - URL is http://host:port/geoserver/gwc/service/wmts?authkey=e18d97d7-b43e-4fd2-85c4-da9d0045542e?request=getTile&tilematrixset=EPSG%3A3857&TileRow=130&service=WMTS&format=image%2Fpng&style=&TileCol=151&version=1.0.0&layer=aerial%3AAERIAL&TileMatrix=EPSG%3A3857%3A8&
03 Apr 12:37:41 ERROR [geotools.tile] - Failed to load image: http://host:port/geoserver/gwc/service/wmts?authkey=e18d97d7-b43e-4fd2-85c4-da9d0045542e?request=getTile&tilematrixset=EPSG%3A3857&TileRow=130&service=WMTS&format=image%2Fpng&style=&TileCol=151&version=1.0.0&layer=aerial%3AAERIAL&TileMatrix=EPSG%3A3857%3A8&
java.io.IOException: Connection returned code 403
at org.geotools.data.wmts.client.WMTSTile.setupInputStream(WMTSTile.java:258)
at org.geotools.data.wmts.client.WMTSTile.doLoadImageTileImage(WMTSTile.java:231)
at org.geotools.data.wmts.client.WMTSTile.loadImageTileImage(WMTSTile.java:219)
at org.geotools.tile.Tile.getBufferedImage(Tile.java:182)
at org.geotools.map.WMTSCoverageReader.getTileImage(WMTSCoverageReader.java:378)
at org.geotools.map.WMTSCoverageReader.renderTile(WMTSCoverageReader.java:367)
at org.geotools.map.WMTSCoverageReader.renderTiles(WMTSCoverageReader.java:350)
at org.geotools.map.WMTSCoverageReader.getMap(WMTSCoverageReader.java:315)
at org.geotools.map.WMTSCoverageReader.read(WMTSCoverageReader.java:282)
at org.geotools.renderer.lite.gridcoverage2d.GridCoverageReaderHelper.readSingleCoverage(GridCoverageReaderHelper.java:549)
at org.geotools.renderer.lite.gridcoverage2d.GridCoverageReaderHelper.readCoverage(GridCoverageReaderHelper.java:184)
at org.geotools.renderer.lite.gridcoverage2d.GridCoverageRenderer.renderImage(GridCoverageRenderer.java:832)
at org.geotools.renderer.lite.gridcoverage2d.GridCoverageRenderer.renderImage(GridCoverageRenderer.java:804)
at org.geoserver.wms.map.RenderedImageMapOutputFormat.directRasterRender(RenderedImageMapOutputFormat.java:1015)
at org.geoserver.wms.map.RenderedImageMapOutputFormat.produceMap(RenderedImageMapOutputFormat.java:369)
at org.geoserver.wms.map.RenderedImageMapOutputFormat.produceMap(RenderedImageMapOutputFormat.java:286)
at org.geoserver.wms.map.RenderedImageMapOutputFormat.produceMap(RenderedImageMapOutputFormat.java:141)
at org.geoserver.wms.GetMap.executeInternal(GetMap.java:653)
at org.geoserver.wms.GetMap.run(GetMap.java:285)
at org.geoserver.wms.GetMap.run(GetMap.java:131)
at org.geoserver.wms.DefaultWebMapService.getMap(DefaultWebMapService.java:320)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:333)
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:190)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157)
at org.geoserver.kml.WebMapServiceKmlInterceptor.invoke(WebMapServiceKmlInterceptor.java:38)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
at org.geoserver.gwc.wms.CacheSeedingWebMapService.invoke(CacheSeedingWebMapService.java:62)
at org.geoserver.gwc.wms.CacheSeedingWebMapService.invoke(CacheSeedingWebMapService.java:36)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
at org.geoserver.gwc.wms.CachingWebMapService.invoke(CachingWebMapService.java:80)
at org.geoserver.gwc.wms.CachingWebMapService.invoke(CachingWebMapService.java:55)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
at org.geoserver.ows.util.RequestObjectLogger.invoke(RequestObjectLogger.java:55)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:213)
at com.sun.proxy.$Proxy73.getMap(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.geoserver.ows.Dispatcher.execute(Dispatcher.java:867)
at org.geoserver.ows.Dispatcher.handleRequestInternal(Dispatcher.java:270)
at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:174)
at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:50)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:963)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:897)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970)
at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:861)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:635)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:742)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.apache.catalina.filters.CorsFilter.handleNonCORS(CorsFilter.java:419)
at org.apache.catalina.filters.CorsFilter.doFilter(CorsFilter.java:169)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.ThreadLocalsCleanupFilter.doFilter(ThreadLocalsCleanupFilter.java:28)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:75)
at org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:231)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:71)
at org.geoserver.monitor.MonitorFilter.doFilter(MonitorFilter.java:144)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:71)
at org.geoserver.wms.animate.AnimatorFilter.doFilter(AnimatorFilter.java:71)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:71)
at org.geoserver.filters.SpringDelegatingFilter.doFilter(SpringDelegatingFilter.java:46)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.platform.AdvancedDispatchFilter.doFilter(AdvancedDispatchFilter.java:50)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:316)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:126)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:90)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:114)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerAnonymousAuthenticationFilter.doFilter(GeoServerAnonymousAuthenticationFilter.java:54)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilterInternal(BasicAuthenticationFilter.java:158)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.geoserver.security.filter.GeoServerBasicAuthenticationFilter.doFilter(GeoServerBasicAuthenticationFilter.java:84)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:91)
at org.geoserver.security.filter.GeoServerSecurityContextPersistenceFilter$1.doFilter(GeoServerSecurityContextPersistenceFilter.java:53)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:213)
at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:176)
at org.geoserver.security.GeoServerSecurityFilterChainProxy.doFilter(GeoServerSecurityFilterChainProxy.java:152)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:88)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.XFrameOptionsFilter.doFilter(XFrameOptionsFilter.java:89)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:42)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.SessionDebugFilter.doFilter(SessionDebugFilter.java:48)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.FlushSafeFilter.doFilter(FlushSafeFilter.java:44)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:197)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:198)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:478)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:80)
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:624)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:341)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:799)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:861)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1455)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
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)
03 Apr 12:37:41 DEBUG [lite.gridcoverage2d] - Applying Raster Symbolizer
03 Apr 12:37:41 TRACE [geotools.factory] - ENTRY (GridCoverageFactory)
03 Apr 12:37:41 TRACE [geotools.factory] - RETURN (GridCoverageFactory): found implementation Optional.
03 Apr 12:37:41 TRACE [geotools.factory] - ENTRY (GridCoverageFactory)
03 Apr 12:37:41 TRACE [geotools.factory] - RETURN (GridCoverageFactory): found implementation Optional.
03 Apr 12:37:41 TRACE [geotools.factory] - ENTRY (GridCoverageFactory)
03 Apr 12:37:41 TRACE [geotools.factory] - RETURN (GridCoverageFactory): found implementation Optional.
03 Apr 12:37:41 TRACE [geotools.factory] - ENTRY (GridCoverageFactory)
03 Apr 12:37:41 TRACE [geotools.factory] - RETURN (GridCoverageFactory): found implementation Optional.
03 Apr 12:37:41 TRACE [geotools.factory] - ENTRY (GridCoverageFactory)
03 Apr 12:37:41 TRACE [geotools.factory] - RETURN (GridCoverageFactory): found implementation Optional.
03 Apr 12:37:41 TRACE [geotools.factory] - ENTRY (GridCoverageFactory)
03 Apr 12:37:41 TRACE [geotools.factory] - RETURN (GridCoverageFactory): found implementation Optional.
03 Apr 12:37:41 TRACE [geotools.factory] - ENTRY (GridCoverageFactory)
03 Apr 12:37:41 TRACE [geotools.factory] - RETURN (GridCoverageFactory): found implementation Optional.
03 Apr 12:37:41 INFO [geoserver.wms] -
Request: getMap
Angle = 0.0
BaseUrl = http://ros-gs1:8180/geoserver/
Bbox = SRSEnvelope[32.113037109375 : 40.550537109375, -4.7296142578125 : 1.3238525390625]
BgColor = java.awt.Color[r=255,g=255,b=255]
Buffer = 0
CQLFilter = null
Crs = GEOGCS[“WGS 84”,
DATUM[“World Geodetic System 1984”,
SPHEROID[“WGS 84”, 6378137.0, 298.257223563, AUTHORITY[“EPSG”,“7030”]],
AUTHORITY[“EPSG”,“6326”]],
PRIMEM[“Greenwich”, 0.0, AUTHORITY[“EPSG”,“8901”]],
UNIT[“degree”, 0.017453292519943295],
AXIS[“Geodetic longitude”, EAST],
AXIS[“Geodetic latitude”, NORTH],
AUTHORITY[“EPSG”,“4326”]]
Elevation =
Env = {}
Exceptions = SE_XML
FeatureId = null
FeatureVersion = null
Filter = null
Filters = null
Format = image/png
FormatOptions = {}
Get = true
Height = 551
Interpolations =
Layers = [org.geoserver.wms.MapLayerInfo@anonymised.com]
MaxFeatures = null
Palette = null
RawKvp = {REQUEST=GetMap, FORMAT=image/png, SRS=EPSG:4326, BBOX=32.113037109375,-4.7296142578125,40.550537109375,1.3238525390625, VERSION=1.1.1, STYLES=, SERVICE=WMS, WIDTH=768, HEIGHT=551, TRANSPARENT=true, LAYERS=test:AERIAL}
RemoteOwsType = null
RemoteOwsURL = null
Request = GetMap
RequestCharset = UTF-8
ScaleMethod = null
Sld = null
SldBody = null
SldVersion = null
SortBy = null
SortByArrays = null
SRS = EPSG:4326
StartIndex = null
StyleBody = null
StyleFormat = sld
Styles = [StyleImpl[ name=raster]]
StyleUrl = null
StyleVersion = null
Tiled = false
TilesOrigin = null
Time =
Transparent = true
ValidateSchema = false
Version = 1.1.1
ViewParams = null
Width = 768
03 Apr 12:37:41 DEBUG [wms.map] - Writing png image …
03 Apr 12:37:41 DEBUG [config.impl] - Could not locate service of type interface org.geoserver.wms.WMSInfo in workspace WorkspaceInfoImpl[test], available services were [WMTSInfoImpl[WMTS], WMSInfoImpl[WMS], WFSInfoImpl[WFS], WCSInfoImpl[WCS]]
03 Apr 12:37:41 DEBUG [geotools.styling] - number of fts set 1
03 Apr 12:37:42 DEBUG [wms.map] - Writing png image … done!
03 Apr 12:37:42 DEBUG [geoserver.filters] - Not compressing output for mimetype: image/png
03 Apr 12:37:42 DEBUG [resources.image] - Failed to clear rendered image adapters field to null. Not a problem per se, but if the finalizer thread is not fast enough, this might result in a OOM
java.lang.NoSuchFieldException: theImage
at java.lang.Class.getDeclaredField(Class.java:2070)
at org.geotools.resources.image.ImageUtilities.cleanField(ImageUtilities.java:1314)
at org.geotools.resources.image.ImageUtilities.disposeSinglePlanarImage(ImageUtilities.java:1292)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:814)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:822)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:822)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:798)
at org.geoserver.wms.RasterCleaner.disposeImage(RasterCleaner.java:88)
at org.geoserver.wms.RasterCleaner.disposeImages(RasterCleaner.java:79)
at org.geoserver.wms.RasterCleaner.finished(RasterCleaner.java:65)
at org.geoserver.ows.Dispatcher.fireFinishedCallback(Dispatcher.java:306)
at org.geoserver.ows.Dispatcher.handleRequestInternal(Dispatcher.java:282)
at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:174)
at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:50)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:963)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:897)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970)
at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:861)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:635)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:742)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.apache.catalina.filters.CorsFilter.handleNonCORS(CorsFilter.java:419)
at org.apache.catalina.filters.CorsFilter.doFilter(CorsFilter.java:169)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.ThreadLocalsCleanupFilter.doFilter(ThreadLocalsCleanupFilter.java:28)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:75)
at org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:231)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:71)
at org.geoserver.monitor.MonitorFilter.doFilter(MonitorFilter.java:144)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:71)
at org.geoserver.wms.animate.AnimatorFilter.doFilter(AnimatorFilter.java:71)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:71)
at org.geoserver.filters.SpringDelegatingFilter.doFilter(SpringDelegatingFilter.java:46)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.platform.AdvancedDispatchFilter.doFilter(AdvancedDispatchFilter.java:50)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:316)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:126)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:90)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:114)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerAnonymousAuthenticationFilter.doFilter(GeoServerAnonymousAuthenticationFilter.java:54)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilterInternal(BasicAuthenticationFilter.java:158)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.geoserver.security.filter.GeoServerBasicAuthenticationFilter.doFilter(GeoServerBasicAuthenticationFilter.java:84)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:91)
at org.geoserver.security.filter.GeoServerSecurityContextPersistenceFilter$1.doFilter(GeoServerSecurityContextPersistenceFilter.java:53)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:213)
at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:176)
at org.geoserver.security.GeoServerSecurityFilterChainProxy.doFilter(GeoServerSecurityFilterChainProxy.java:152)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:88)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.XFrameOptionsFilter.doFilter(XFrameOptionsFilter.java:89)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:42)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.SessionDebugFilter.doFilter(SessionDebugFilter.java:48)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.FlushSafeFilter.doFilter(FlushSafeFilter.java:44)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:197)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:198)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:478)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:80)
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:624)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:341)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:799)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:861)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1455)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
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)
03 Apr 12:37:42 DEBUG [resources.image] - Failed to clear rendered image adapters field to null. Not a problem per se, but if the finalizer thread is not fast enough, this might result in a OOM
java.lang.NoSuchFieldException: theImage
at java.lang.Class.getDeclaredField(Class.java:2070)
at org.geotools.resources.image.ImageUtilities.cleanField(ImageUtilities.java:1314)
at org.geotools.resources.image.ImageUtilities.disposeSinglePlanarImage(ImageUtilities.java:1292)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:814)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:822)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:798)
at org.geoserver.wms.RasterCleaner.disposeImage(RasterCleaner.java:88)
at org.geoserver.wms.RasterCleaner.disposeImages(RasterCleaner.java:79)
at org.geoserver.wms.RasterCleaner.finished(RasterCleaner.java:65)
at org.geoserver.ows.Dispatcher.fireFinishedCallback(Dispatcher.java:306)
at org.geoserver.ows.Dispatcher.handleRequestInternal(Dispatcher.java:282)
at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:174)
at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:50)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:963)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:897)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970)
at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:861)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:635)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:742)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.apache.catalina.filters.CorsFilter.handleNonCORS(CorsFilter.java:419)
at org.apache.catalina.filters.CorsFilter.doFilter(CorsFilter.java:169)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.ThreadLocalsCleanupFilter.doFilter(ThreadLocalsCleanupFilter.java:28)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:75)
at org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:231)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:71)
at org.geoserver.monitor.MonitorFilter.doFilter(MonitorFilter.java:144)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:71)
at org.geoserver.wms.animate.AnimatorFilter.doFilter(AnimatorFilter.java:71)
at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:71)
at org.geoserver.filters.SpringDelegatingFilter.doFilter(SpringDelegatingFilter.java:46)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.platform.AdvancedDispatchFilter.doFilter(AdvancedDispatchFilter.java:50)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:316)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:126)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:90)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:114)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerAnonymousAuthenticationFilter.doFilter(GeoServerAnonymousAuthenticationFilter.java:54)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilterInternal(BasicAuthenticationFilter.java:158)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.geoserver.security.filter.GeoServerBasicAuthenticationFilter.doFilter(GeoServerBasicAuthenticationFilter.java:84)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:91)
at org.geoserver.security.filter.GeoServerSecurityContextPersistenceFilter$1.doFilter(GeoServerSecurityContextPersistenceFilter.java:53)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:213)
at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:176)
at org.geoserver.security.GeoServerSecurityFilterChainProxy.doFilter(GeoServerSecurityFilterChainProxy.java:152)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:88)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.XFrameOptionsFilter.doFilter(XFrameOptionsFilter.java:89)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:42)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.SessionDebugFilter.doFilter(SessionDebugFilter.java:48)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.geoserver.filters.FlushSafeFilter.doFilter(FlushSafeFilter.java:44)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:197)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:198)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:478)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:80)
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:624)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:341)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:799)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:861)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1455)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
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)
03 Apr 12:37:42 DEBUG [monitor.OpenSessionInViewFilter] - Closing single Hibernate Session in OpenSessionInViewFilter
03

Ian Turton

Kind regards,
Steve Omondi

On Wed, Mar 28, 2018 at 8:57 AM, Steve Omondi <steve.omondi@anonymised.com> wrote:

Can you request tiles from the source directly?

Yes. I can use the Tile in the Source Geoserver in Openlayers however not in QGIS.

When I tried the WMTS from source in QGIS I can getCapabilities succesfully but the layer is not loaded in the Map Canvas.

Next check if the requests being made work in the browser.

Yes the request works in the broiwser but retuns the black image still

Kind regards,
Steve Omondi

On Tue, Mar 27, 2018 at 10:16 PM, Ian Turton <ijturton@anonymised.com> wrote:

Can you request tiles from the source directly? Next check if the requests being made work in the browser.

Ian

On Tue, 27 Mar 2018, 14:46 Steve Omondi, <steve.omondi@anonymised.com> wrote:

Hi guys,

Does anyone have experience with Cascading secured WMTS Services in Geoserver?

I can seem to get it to work. WMS cascading work perfectly, but I want to cascade WMTS instead.

I’m using Authkey for Authentication in the Origin Geoserver (i.e. WMTS Source Geoserver).

When I preview in the Cascaded Layer as WMS I get this

Here are the Logs
2018-03-27 16:30:29,018 DEBUG [wms.map] - Writing png image …
2018-03-27 16:30:29,022 DEBUG [config.impl] - Could not locate service of type interface org.geoserver.wms.WMSInfo in workspace WorkspaceInfoImpl[test], available services were [WMTSInfoImpl[WMTS], WMSInfoImpl[WMS], WFSInfoImpl[WFS], WCSInfoImpl[WCS]]
2018-03-27 16:30:29,022 DEBUG [geotools.styling] - number of fts set 1
2018-03-27 16:30:29,508 DEBUG [wms.map] - Writing png image … done!
2018-03-27 16:30:29,508 DEBUG [geoserver.filters] - Not compressing output for mimetype: image/png
2018-03-27 16:30:29,508 DEBUG [resources.image] - Failed to clear rendered image adapters field to null. Not a problem per se, but if the finalizer thread is not fast enough, this might result in a OOM
java.lang.NoSuchFieldException: theImage
at java.lang.Class.getDeclaredField(Class.java:2070)
at org.geotools.resources.image.ImageUtilities.cleanField(ImageUtilities.java:1314)
at org.geotools.resources.image.ImageUtilities.disposeSinglePlanarImage(ImageUtilities.java:1292)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:814)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:822)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:822)
at org.geotools.resources.image.ImageUtilities.disposePlanarImageChain(ImageUtilities.java:798)
at org.geoserver.wms.RasterCleaner.disposeImage(RasterCleaner.java:88)
at org.geoserver.wms.RasterCleaner.disposeImages(RasterCleaner.java:79)
at org.geoserver.wms.RasterCleaner.finished(RasterCleaner.java:65)
at org.geoserver.ows.Dispatcher.fireFinishedCallback(Dispatcher.java:306)
at org.geoserver.ows.Dispatcher.handleRequestInternal(Dispatcher.java:282)
at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:174)

The Source Geoserver Logs look like this

2018-03-27 16:30:29,003 DEBUG [security.IncludeQueryStringAntPathRequestMatcher] - Matched Path: /gwc/service/wmts, QueryString: authkey=e18d97d7-b43e-4fd2-85c4-da9d0045542e?request=getTile&tilematrixset=EPSG%3A3857&TileRow=2063&service=WMTS&format=image%2Fpng&style=&TileCol=2467&version=1.0.0&layer=aerial%3AAERIAL_2015&TileMatrix=EPSG%3A3857%3A12& with /**
2018-03-27 16:30:29,003 DEBUG [geoserver.filters] - Creating a new http session inside the web UI (normal behavior)
java.lang.Exception: Full stack trace for the session creation path
at org.geoserver.filters.SessionDebugFilter$SessionDebugWrapper.getSession(SessionDebugFilter.java:92)
at org.geoserver.filters.SessionDebugFilter$SessionDebugWrapper.getSession(SessionDebugFilter.java:70)
at javax.servlet.http.HttpServletRequestWrapper.getSession(HttpServletRequestWrapper.java:240)
at org.geoserver.security.filter.GeoServerSecurityContextPersistenceFilter$1.doFilter(GeoServerSecurityContextPersistenceFilter.java:50)
at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at

Anyone has an idea how I can go about this?

Kind regards,
Steve Omondi


Check out the vibrant tech community on one of the world’s most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot_______________________________________________
Geoserver-users mailing list

Please make sure you read the following two resources before posting to this list:

If you want to request a feature or an improvement, also see this: https://github.com/geoserver/geoserver/wiki/Successfully-requesting-and-integrating-new-features-and-improvements-in-GeoServer

Geoserver-users@anonymised.comrge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-users