NetCDF with custom dimensions as imageMosaic

classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|

NetCDF with custom dimensions as imageMosaic

GeoServer - User mailing list
I have a problem in loading a netcdf with custom dimensions in geoserver.
Custom dimensions cannot be loaded, even by defining the indexer.xml

OS: Windows 10
Java version: 1.8.0_192-b12
Geoserver vesion: GeoServer 2.15.1


What I see from the error-log as important, is:
1)
WARN [imageio.netcdf] - Unsupported axis: int month(month=12);
Unsupported axis: float wavelength(wavelength=26);

2)
Could not convert file:\D:LER_mosaic\nco into canonical form


But I could not find a way to solve these issues.

1) might be an issue with my definition of the custom dimensions in my
indexer.xml.
custom dimensions are month(int) and wavelength(double)
Why are the dimensions not supported, according to the warning? I defined
them in indexer.xml.
Question here: How to define these custom dimensions properly?

2) might be related to my OS, which is Windows 10. It creates the wrong
backslashes automatically.
Question here: How to prevent using wrong backslashes in loading files into
geoserver from windows?


I have tried to follow rules suggested in:
http://osgeo-org.1560.x6.nabble.com/ImageMosaic-custom-dimension-internal-to-NetCDF-files-td5268626.html
https://sourceforge.net/p/geoserver/mailman/message/35125482/


and:
https://docs.geoserver.org/latest/en/user/extensions/netcdf/netcdf.html#notes-on-supported-netcdfs
https://geoserver.geo-solutions.it/edu/en/multidim/mosaic_config/netcdf_mosaic.html
https://geoserver.geo-solutions.it/edu/en/multidim/netcdf/netcdf_indexer.html
https://docs.geoserver.org/stable/en/user/extensions/netcdf/netcdf.html#supporting-custom-netcdf-coordinate-reference-systems
https://geoserver.geo-solutions.it/edu/en/multidim/imagemosaic/mosaic_indexer.html


Attached are the log-file with warnings and error-messages. See below...
Also a ncdump of my netcdf-file is attached. See below...


Any hints are very appreciated. Thank you in advance for any
help/tipps/support.
Kind regards.
Miriam

-----------------------------------------------------------------------------------------------------
Here is an exerpt of my indexer.xml:
-----------------------------------------------------------------------------------------------------
<?xml version="1.0" encoding="UTF-8"?>
<Indexer>
    <domains>
      <domain name="month">
         <attributes><attribute>month</attribute></attributes>
      </domain>
      <domain name="wavelength">
         <attributes><attribute>wavelength</attribute></attributes>
      </domain>
    </domains>
   <coverages>
                <coverage>
                        <name>minimum_LER</name>
                        <domains>
                                <domain ref="month" />
                                <domain ref="wavelength" />
                        </domains>
                        <schema name="minimum_LER">
                                <attributes>
                                the_geom:Polygon,imageindex:Integer,month:Integer,wavelength:Double
                                </attributes>
                        </schema>
                </coverage>
    </coverages>
  <parameters>
    <parameter name="AuxiliaryFile" value="_auxiliary.xml" />
    <parameter name="AbsolutePath" value="true" />
  </parameters>
</Indexer>


-----------------------------------------------------------------------------------------------------
Here is an exerpt of my _auxiliary.xml:
-----------------------------------------------------------------------------------------------------
<?xml version="1.0" encoding="UTF-8"?>
<Indexer>
    <coverages>
        <coverage>
  <schema name="minimum_LER">
                                <attributes>
                                the_geom:Polygon,imageindex:Integer,month:Integer,wavelength:Double
                                </attributes>
                        </schema>
           <name>minimum_LER</name>
            <origName>minimum_LER</origName>
       </coverage>
    </coverages>
</Indexer>


-----------------------------------------------------------------------------------------------------
ncdump:
-----------------------------------------------------------------------------------------------------
netcdf ler_2007 {
dimensions:
        latitude = 720 ;
        longitude = 1440 ;
        month = 12 ;
        wavelength = 26 ;
variables:
        float latitude(latitude) ;
                string latitude:standard_name = "latitude" ;
                string latitude:long_name = "latitude of the centre of the
grid cell" ;
                string latitude:units = "degrees_north" ;
        float longitude(longitude) ;
                string longitude:standard_name = "longitude" ;
                string longitude:long_name = "longitude of the centre of the
grid cell" ;
                string longitude:units = "degrees_east" ;
        float minimum_LER(month, wavelength, latitude, longitude) ;
                string minimum_LER:long_name = "surface LER retrieved
according to the MIN-LER approach" ;
                string minimum_LER:units = "1" ;
                minimum_LER:_FillValue = NaNf ;
        int month(month) ;
                month:units = "1" ;
                month:long_name = "month" ;
        float wavelength(wavelength) ;
                string wavelength:long_name = "central wavelength of the
wavelength band" ;
                string wavelength:units = "nm" ;
                wavelength:standard_name = "wavelength" ;

-----------------------------------------------------------------------------------------------------
Geoserver log-file:
-----------------------------------------------------------------------------------------------------
2019-07-02 14:37:21,279 INFO [org.geoserver] - Loaded layer group
'spearfish'
2019-07-02 14:37:21,280 INFO [org.geoserver] - Loaded layer group 'tasmania'
2019-07-02 14:37:21,281 INFO [org.geoserver] - Loaded layer group 'tiger-ny'
2019-07-02 14:37:21,357 INFO [org.geoserver] - Loaded service
'WMTSInfoImpl--258b0fe6:16bb27996cd:-8000', enabled
2019-07-02 14:37:21,361 INFO [org.geoserver] - Loaded service 'wcs', enabled
2019-07-02 14:37:21,367 INFO [org.geoserver] - Loaded service 'wfs', enabled
2019-07-02 14:37:21,378 INFO [org.geoserver] - Loaded service 'wms', enabled
2019-07-02 14:37:21,391 INFO [org.geoserver] - Loaded service
'WMTSInfoImpl-12f6f94b:16b7429614c:-7ff5', enabled
2019-07-02 14:37:21,393 INFO [org.geoserver] - Loaded service
'WCSInfoImpl-12f6f94b:16b7429614c:-7ff4', enabled
2019-07-02 14:37:21,396 INFO [org.geoserver] - Loaded service
'WFSInfoImpl-12f6f94b:16b7429614c:-7ff3', enabled
2019-07-02 14:37:21,399 INFO [org.geoserver] - Loaded service
'WMSInfoImpl-12f6f94b:16b7429614c:-7ff2', enabled
2019-07-02 14:37:21,416 INFO [config.GeoserverXMLResourceProvider] - Will
look for 'geowebcache.xml' in directory 'C:\Program Files (x86)\GeoServer
2.15.1\data_dir\gwc'.
2019-07-02 14:37:21,461 INFO [config.GeoserverXMLResourceProvider] - Found
configuration file in gwc
2019-07-02 14:37:21,462 INFO [config.GeoserverXMLResourceProvider] - Found
configuration file in gwc
2019-07-02 14:37:21,463 INFO [config.GeoserverXMLResourceProvider] - Found
configuration file in gwc
2019-07-02 14:37:21,489 WARN [config.XMLConfiguration] -
********************************************************************************
2019-07-02 14:37:21,489 WARN [config.XMLConfiguration] - *** GWC
configuration validation error: cvc-elt.1: Cannot find the declaration of
element 'gwcConfiguration'.
2019-07-02 14:37:21,490 WARN [config.XMLConfiguration] - *** Will try to use
configuration anyway. Please check the order of declared elements against
the schema.
2019-07-02 14:37:21,491 WARN [config.XMLConfiguration] -
********************************************************************************
2019-07-02 14:37:21,533 INFO [config.XMLConfiguration] - Initializing
GridSets from gwc
2019-07-02 14:37:21,534 INFO [config.XMLConfiguration] - Initializing layers
from gwc
2019-07-02 14:37:21,562 INFO [gwc.layer] - Initializing GWC configuration
based on GeoServer's Catalog
2019-07-02 14:37:21,562 INFO [gwc.layer] - GeoServer TileLayer store base
directory is: gwc-layers
2019-07-02 14:37:21,563 INFO [gwc.layer] - Loading tile layers from
gwc-layers
2019-07-02 14:37:21,596 INFO [storage.BlobStoreAggregator] -
BlobStoreConfiguration gwc contained no blob store infos.
2019-07-02 14:37:21,600 INFO [storage.DefaultStorageFinder] -
***************************************************************************************************************************************************
2019-07-02 14:37:21,600 INFO [storage.DefaultStorageFinder] - *** Found Java
environment variable GEOSERVER_DATA_DIR set to C:\Program Files
(x86)\GeoServer 2.15.1\data_dir, using it as the default prefix. ***
2019-07-02 14:37:21,601 INFO [storage.DefaultStorageFinder] -
***************************************************************************************************************************************************
2019-07-02 14:37:21,643 INFO [gwc.config] - Initializing GeoServer specific
GWC configuration from gwc-gs.xml
2019-07-02 14:37:21,682 INFO [config.GeoserverXMLResourceProvider] - Will
look for 'geowebcache-diskquota.xml' in directory 'C:\Program Files
(x86)\GeoServer 2.15.1\data_dir\gwc'.
2019-07-02 14:37:21,689 INFO [config.GeoserverXMLResourceProvider] - Will
look for 'geowebcache-diskquota-jdbc.xml' in directory 'C:\Program Files
(x86)\GeoServer 2.15.1\data_dir\gwc'.
2019-07-02 14:37:21,691 INFO [diskquota.ConfigLoader] - DiskQuota
configuration is not readable: gwc/geowebcache-diskquota.xml
2019-07-02 14:37:21,697 INFO [diskquota.ConfigLoader] - DiskQuota
configuration is not readable: gwc/geowebcache-diskquota.xml
2019-07-02 14:37:21,698 INFO [diskquota.DiskQuotaMonitor] - Setting up disk
quota periodic enforcement task
2019-07-02 14:37:21,698 INFO [diskquota.DiskQuotaMonitor] - 0 layers
configured with their own quotas.
2019-07-02 14:37:21,705 INFO [diskquota.DiskQuotaMonitor] - 31 layers
attached to global quota 500.0 MB
2019-07-02 14:37:21,736 INFO [diskquota.DiskQuotaMonitor] - Disk quota
periodic enforcement task set up every 10 SECONDS
2019-07-02 14:37:21,840 INFO [geowebcache.GeoWebCacheDispatcher] - Invoked
setServletPrefix(gwc)
2019-07-02 14:37:21,847 INFO [georss.GeoRSSPoller] - Initializing GeoRSS
poller in a background job...
2019-07-02 14:37:21,848 INFO [georss.GeoRSSPoller] - No enabled GeoRSS feeds
found, poller will not run.
2019-07-02 14:37:21,913 INFO [wms.WMSService] - Will NOT recombine tiles for
non-tiling clients.
2019-07-02 14:37:21,913 INFO [wms.WMSService] - Will proxy requests to
backend that are not getmap or getcapabilities.
2019-07-02 14:37:23,007 WARN [gce.imagemosaic] - Unable to set ordering
between tiff readers spi
2019-07-02 14:37:26,423 INFO [geoserver.security] - Start reloading
user/groups for service named default
2019-07-02 14:37:26,428 INFO [geoserver.security] - Reloading user/groups
successful for service named default
2019-07-02 14:37:26,527 INFO [geoserver.security] - AuthenticationCache
Initialized with 1000 Max Entries, 300 seconds idle time, 600 seconds time
to live and 3 concurrency level
2019-07-02 14:37:26,527 INFO [geoserver.security] - AuthenticationCache
Eviction Task created to run every 600 seconds
2019-07-02 14:37:46,179 INFO [geoserver.security] - Strong cryptography is
available
2019-07-02 14:38:19,801 INFO [store.panel] - Could not convert
file:\D:LER_mosaic\nco into canonical form
java.io.IOException: The filename, directory name, or volume label syntax is
incorrect
        at java.io.WinNTFileSystem.canonicalize0(Native Method)
        at java.io.WinNTFileSystem.canonicalize(Unknown Source)
        at java.io.File.getCanonicalPath(Unknown Source)
        at java.io.File.getCanonicalFile(Unknown Source)
        at
org.geoserver.web.data.store.panel.FileModel.canonicalize(FileModel.java:101)
        at
org.geoserver.web.data.store.panel.FileModel.setObject(FileModel.java:69)
        at
org.geoserver.web.data.store.panel.FileModel.setObject(FileModel.java:26)
        at org.apache.wicket.Component.setDefaultModelObject(Component.java:3122)
        at
org.apache.wicket.markup.html.form.FormComponent.setModelObject(FormComponent.java:1579)
        at
org.apache.wicket.markup.html.form.FormComponent.updateModel(FormComponent.java:1097)
        at
org.apache.wicket.markup.html.form.Form$FormModelUpdateVisitor.component(Form.java:229)
        at
org.apache.wicket.markup.html.form.Form$FormModelUpdateVisitor.component(Form.java:199)
        at
org.apache.wicket.util.visit.Visits.visitPostOrderHelper(Visits.java:274)
        at
org.apache.wicket.util.visit.Visits.visitPostOrderHelper(Visits.java:262)
        at
org.apache.wicket.util.visit.Visits.visitPostOrderHelper(Visits.java:262)
        at
org.apache.wicket.util.visit.Visits.visitPostOrderHelper(Visits.java:262)
        at
org.apache.wicket.util.visit.Visits.visitPostOrderHelper(Visits.java:262)
        at
org.apache.wicket.util.visit.Visits.visitPostOrderHelper(Visits.java:262)
        at org.apache.wicket.util.visit.Visits.visitPostOrder(Visits.java:245)
        at
org.apache.wicket.markup.html.form.FormComponent.visitComponentsPostOrder(FormComponent.java:423)
        at
org.apache.wicket.markup.html.form.Form.internalUpdateFormComponentModels(Form.java:1866)
        at
org.apache.wicket.markup.html.form.Form.updateFormComponentModels(Form.java:1831)
        at org.apache.wicket.markup.html.form.Form.process(Form.java:965)
        at org.apache.wicket.markup.html.form.Form.onFormSubmitted(Form.java:797)
        at
org.apache.wicket.ajax.form.AjaxFormSubmitBehavior.onEvent(AjaxFormSubmitBehavior.java:171)
        at
org.apache.wicket.ajax.AjaxEventBehavior.respond(AjaxEventBehavior.java:155)
        at
org.apache.wicket.ajax.AbstractDefaultAjaxBehavior.onRequest(AbstractDefaultAjaxBehavior.java:601)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at
org.apache.wicket.RequestListenerInterface.internalInvoke(RequestListenerInterface.java:258)
        at
org.apache.wicket.RequestListenerInterface.invoke(RequestListenerInterface.java:241)
        at
org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler.invokeListener(ListenerInterfaceRequestHandler.java:248)
        at
org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler.respond(ListenerInterfaceRequestHandler.java:234)
        at
org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:895)
        at
org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
        at
org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:265)
        at
org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:222)
        at
org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:293)
        at
org.apache.wicket.protocol.http.WicketFilter.processRequestCycle(WicketFilter.java:261)
        at
org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:203)
        at
org.apache.wicket.protocol.http.WicketServlet.doPost(WicketServlet.java:159)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
        at
org.springframework.web.servlet.mvc.ServletWrappingController.handleRequestInternal(ServletWrappingController.java:165)
        at
org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:177)
        at
org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:52)
        at
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1038)
        at
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:942)
        at
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:998)
        at
org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:901)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
        at
org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:875)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
        at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:865)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1655)
        at
org.geoserver.filters.ThreadLocalsCleanupFilter.doFilter(ThreadLocalsCleanupFilter.java:26)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
        at
org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:69)
        at
org.geoserver.wms.animate.AnimatorFilter.doFilter(AnimatorFilter.java:73)
        at
org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:66)
        at
org.geoserver.filters.SpringDelegatingFilter.doFilter(SpringDelegatingFilter.java:41)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
        at
org.geoserver.platform.AdvancedDispatchFilter.doFilter(AdvancedDispatchFilter.java:37)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
        at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:320)
        at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:70)
        at
org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:127)
        at
org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:91)
        at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:74)
        at
org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)
        at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
        at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:70)
        at
org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:119)
        at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:74)
        at
org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)
        at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
        at
org.geoserver.security.filter.GeoServerAnonymousAuthenticationFilter.doFilter(GeoServerAnonymousAuthenticationFilter.java:51)
        at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
        at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:70)
        at
org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:200)
        at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:74)
        at
org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)
        at
org.geoserver.security.filter.GeoServerUserNamePasswordAuthenticationFilter.doFilter(GeoServerUserNamePasswordAuthenticationFilter.java:112)
        at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
        at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:70)
        at
org.springframework.security.web.authentication.rememberme.RememberMeAuthenticationFilter.doFilter(RememberMeAuthenticationFilter.java:158)
        at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:74)
        at
org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)
        at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
        at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:70)
        at
org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:105)
        at
org.geoserver.security.filter.GeoServerSecurityContextPersistenceFilter$1.doFilter(GeoServerSecurityContextPersistenceFilter.java:52)
        at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:74)
        at
org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)
        at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
        at
org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:215)
        at
org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:178)
        at
org.geoserver.security.GeoServerSecurityFilterChainProxy.doFilter(GeoServerSecurityFilterChainProxy.java:142)
        at
org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:357)
        at
org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:270)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
        at org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:90)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
        at
org.geoserver.filters.XFrameOptionsFilter.doFilter(XFrameOptionsFilter.java:79)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
        at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:42)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
        at
org.geoserver.filters.SessionDebugFilter.doFilter(SessionDebugFilter.java:46)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
        at org.geoserver.filters.FlushSafeFilter.doFilter(FlushSafeFilter.java:42)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
        at
org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:200)
        at
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1634)
        at
org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:533)
        at
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:146)
        at
org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548)
        at
org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
        at
org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:257)
        at
org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1595)
        at
org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:255)
        at
org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1340)
        at
org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:203)
        at
org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:473)
        at
org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1564)
        at
org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:201)
        at
org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1242)
        at
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:144)
        at
org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:220)
        at
org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:126)
        at
org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
        at org.eclipse.jetty.server.Server.handle(Server.java:503)
        at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:364)
        at
org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:260)
        at
org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:305)
        at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103)
        at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:118)
        at
org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:333)
        at
org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:310)
        at
org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:168)
        at
org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:126)
        at
org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:366)
        at
org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:765)
        at
org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:683)
        at java.lang.Thread.run(Unknown Source)
2019-07-02 14:38:20,306 WARN [imageio.netcdf] - Unsupported axis: int
month(month=12);
  :units = "1";
  :long_name = "month";
 in input: file:/D:/LER_mosaic/nco/ler_2007.nc has been found
2019-07-02 14:38:20,306 WARN [imageio.netcdf] - Unsupported axis: float
wavelength(wavelength=26);
  :long_name = "central wavelength of the wavelength band";
  :units = "nm";
  :standard_name = "wavelength";
 in input: file:/D:/LER_mosaic/nco/ler_2007.nc has been found
2019-07-02 14:38:20,656 WARN [io.netcdf] - Unable to connect
org.geotools.data.DataSourceException: Unable to connect
        at
org.geotools.coverage.io.netcdf.NetCDFReader.<init>(NetCDFReader.java:160)
        at
org.geotools.coverage.io.netcdf.NetCDFFormat.getReader(NetCDFFormat.java:94)
        at
org.geotools.gce.imagemosaic.ImageMosaicWalker.handleFile(ImageMosaicWalker.java:186)
        at
org.geotools.gce.imagemosaic.ImageMosaicDirectoryWalker$MosaicDirectoryWalker.handleFile(ImageMosaicDirectoryWalker.java:96)
        at org.apache.commons.io.DirectoryWalker.walk(DirectoryWalker.java:367)
        at org.apache.commons.io.DirectoryWalker.walk(DirectoryWalker.java:335)
        at
org.geotools.gce.imagemosaic.ImageMosaicDirectoryWalker$MosaicDirectoryWalker.<init>(ImageMosaicDirectoryWalker.java:117)
        at
org.geotools.gce.imagemosaic.ImageMosaicDirectoryWalker.run(ImageMosaicDirectoryWalker.java:203)
        at org.geotools.gce.imagemosaic.Utils.createMosaic(Utils.java:490)
        at org.geotools.gce.imagemosaic.Utils.checkSource(Utils.java:1503)
        at
org.geotools.gce.imagemosaic.ImageMosaicReader.initReaderFromURL(ImageMosaicReader.java:566)
        at
org.geotools.gce.imagemosaic.ImageMosaicReader.<init>(ImageMosaicReader.java:511)
        at
org.geotools.gce.imagemosaic.ImageMosaicFormat.getReader(ImageMosaicFormat.java:571)
        at
org.geotools.gce.imagemosaic.ImageMosaicFormat.getReader(ImageMosaicFormat.java:107)
        at
org.geoserver.catalog.ResourcePool.getGridCoverageReader(ResourcePool.java:1490)
        at
org.geoserver.catalog.ResourcePool.getGridCoverageReader(ResourcePool.java:1436)
        at
org.geoserver.catalog.impl.CoverageStoreInfoImpl.getGridCoverageReader(CoverageStoreInfoImpl.java:53)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at
org.geoserver.catalog.impl.ModificationProxy.invoke(ModificationProxy.java:127)
        at com.sun.proxy.$Proxy25.getGridCoverageReader(Unknown Source)
        at
org.geoserver.web.data.layer.NewLayerPageProvider.getItemsInternal(NewLayerPageProvider.java:86)
        at
org.geoserver.web.data.layer.NewLayerPageProvider.getItems(NewLayerPageProvider.java:47)
        at
org.geoserver.web.wicket.GeoServerDataProvider.getFilteredItems(GeoServerDataProvider.java:202)
        at
org.geoserver.web.data.layer.NewLayerPageProvider.getFilteredItems(NewLayerPageProvider.java:186)
        at
org.geoserver.web.wicket.GeoServerDataProvider.size(GeoServerDataProvider.java:220)
        at
org.geoserver.web.wicket.GeoServerTablePanel$PagerDelegate.updateMatched(GeoServerTablePanel.java:597)
        at
org.geoserver.web.wicket.GeoServerTablePanel$PagerDelegate.<init>(GeoServerTablePanel.java:592)
        at
org.geoserver.web.wicket.GeoServerTablePanel.<init>(GeoServerTablePanel.java:182)
        at
org.geoserver.web.wicket.GeoServerTablePanel.<init>(GeoServerTablePanel.java:96)
        at org.geoserver.web.data.layer.NewLayerPage$1.<init>(NewLayerPage.java:99)
        at org.geoserver.web.data.layer.NewLayerPage.<init>(NewLayerPage.java:98)
        at
org.geoserver.web.data.store.CoverageStoreNewPage.onSuccessfulSave(CoverageStoreNewPage.java:82)
        at
org.geoserver.web.data.store.CoverageStoreNewPage.onSave(CoverageStoreNewPage.java:71)
        at
org.geoserver.web.data.store.AbstractCoverageStorePage$1.onSubmit(AbstractCoverageStorePage.java:139)
        at
org.apache.wicket.ajax.markup.html.form.AjaxSubmitLink$1.onSubmit(AjaxSubmitLink.java:111)
        at
org.apache.wicket.ajax.form.AjaxFormSubmitBehavior$AjaxFormSubmitter.onSubmit(AjaxFormSubmitBehavior.java:215)
        at org.apache.wicket.markup.html.form.Form.delegateSubmit(Form.java:1309)
        at org.apache.wicket.markup.html.form.Form.process(Form.java:976)
        at org.apache.wicket.markup.html.form.Form.onFormSubmitted(Form.java:797)
        at
org.apache.wicket.ajax.form.AjaxFormSubmitBehavior.onEvent(AjaxFormSubmitBehavior.java:171)
        at
org.apache.wicket.ajax.AjaxEventBehavior.respond(AjaxEventBehavior.java:155)
        at
org.apache.wicket.ajax.AbstractDefaultAjaxBehavior.onRequest(AbstractDefaultAjaxBehavior.java:601)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at
org.apache.wicket.RequestListenerInterface.internalInvoke(RequestListenerInterface.java:258)
        at
org.apache.wicket.RequestListenerInterface.invoke(RequestListenerInterface.java:241)
        at
org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler.invokeListener(ListenerInterfaceRequestHandler.java:248)
        at
org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler.respond(ListenerInterfaceRequestHandler.java:234)
        at
org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:895)
        at
org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
        at
org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:265)
        at
org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:222)
        at
org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:293)
        at
org.apache.wicket.protocol.http.WicketFilter.processRequestCycle(WicketFilter.java:261)
        at
org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:203)
        at
org.apache.wicket.protocol.http.WicketServlet.doPost(WicketServlet.java:159)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
        at
org.springframework.web.servlet.mvc.ServletWrappingController.handleRequestInternal(ServletWrappingController.java:165)
        at
org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:177)
        at
org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:52)
        at
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1038)
        at
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:942)
        at
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:998)
        at
org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:901)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
        at
org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:875)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
        at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:865)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1655)
        at
org.geoserver.filters.ThreadLocalsCleanupFilter.doFilter(ThreadLocalsCleanupFilter.java:26)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
        at
org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:69)
        at
org.geoserver.wms.animate.AnimatorFilter.doFilter(AnimatorFilter.java:73)
        at
org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:66)
        at
org.geoserver.filters.SpringDelegatingFilter.doFilter(SpringDelegatingFilter.java:41)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
        at
org.geoserver.platform.AdvancedDispatchFilter.doFilter(AdvancedDispatchFilter.java:37)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
        at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:320)
        at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:70)
        at
org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:127)
        at
org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:91)
        at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:74)
        at
org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)
        at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
        at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:70)
        at
org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:119)
        at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:74)
        at
org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)
        at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
        at
org.geoserver.security.filter.GeoServerAnonymousAuthenticationFilter.doFilter(GeoServerAnonymousAuthenticationFilter.java:51)
        at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
        at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:70)
        at
org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:200)
        at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:74)
        at
org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)
        at
org.geoserver.security.filter.GeoServerUserNamePasswordAuthenticationFilter.doFilter(GeoServerUserNamePasswordAuthenticationFilter.java:112)
        at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
        at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:70)
        at
org.springframework.security.web.authentication.rememberme.RememberMeAuthenticationFilter.doFilter(RememberMeAuthenticationFilter.java:158)
        at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:74)
        at
org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)
        at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
        at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:70)
        at
org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:105)
        at
org.geoserver.security.filter.GeoServerSecurityContextPersistenceFilter$1.doFilter(GeoServerSecurityContextPersistenceFilter.java:52)
        at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:74)
        at
org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)
        at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
        at
org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:215)
        at
org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:178)
        at
org.geoserver.security.GeoServerSecurityFilterChainProxy.doFilter(GeoServerSecurityFilterChainProxy.java:142)
        at
org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:357)
        at
org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:270)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
        at org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:90)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
        at
org.geoserver.filters.XFrameOptionsFilter.doFilter(XFrameOptionsFilter.java:79)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
        at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:42)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
        at
org.geoserver.filters.SessionDebugFilter.doFilter(SessionDebugFilter.java:46)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
        at org.geoserver.filters.FlushSafeFilter.doFilter(FlushSafeFilter.java:42)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
        at
org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:200)
        at
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1634)
        at
org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:533)
        at
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:146)
        at
org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548)
        at
org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
        at
org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:257)
        at
org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1595)
        at
org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:255)
        at
org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1340)
        at
org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:203)
        at
org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:473)
        at
org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1564)
        at
org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:201)
        at
org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1242)
        at
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:144)
        at
org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:220)
        at
org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:126)
        at
org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
        at org.eclipse.jetty.server.Server.handle(Server.java:503)
        at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:364)
        at
org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:260)
        at
org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:305)
        at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103)
        at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:118)
        at
org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:333)
        at
org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:310)
        at
org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:168)
        at
org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:126)
        at
org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:366)
        at
org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:765)
        at
org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:683)
        at java.lang.Thread.run(Unknown Source)
Caused by: org.geotools.data.DataSourceException:
java.lang.IllegalArgumentException: Number of Images is negative: 0
        at
org.geotools.coverage.io.netcdf.NetCDFAccess.<init>(NetCDFAccess.java:139)
        at
org.geotools.coverage.io.netcdf.NetCDFDriver.connect(NetCDFDriver.java:92)
        at
org.geotools.coverage.io.impl.DefaultFileDriver.process(DefaultFileDriver.java:228)
        at
org.geotools.coverage.io.netcdf.NetCDFReader.<init>(NetCDFReader.java:157)
        ... 164 more
Caused by: java.lang.RuntimeException: java.lang.IllegalArgumentException:
Number of Images is negative: 0
        at
org.geotools.imageio.netcdf.NetCDFImageReader.setInput(NetCDFImageReader.java:288)
        at javax.imageio.ImageReader.setInput(Unknown Source)
        at
org.geotools.coverage.io.netcdf.NetCDFAccess.<init>(NetCDFAccess.java:128)
        ... 167 more
Caused by: java.lang.IllegalArgumentException: Number of Images is negative:
0
        at
org.geotools.imageio.netcdf.NetCDFImageReader.setNumImages(NetCDFImageReader.java:209)
        at
org.geotools.imageio.netcdf.NetCDFImageReader.init(NetCDFImageReader.java:551)
        at
org.geotools.imageio.netcdf.NetCDFImageReader.setInput(NetCDFImageReader.java:286)
        ... 169 more
2019-07-02 14:38:20,670 ERROR [gce.imagemosaic] -
java.lang.NullPointerException
        at
org.geotools.gce.imagemosaic.ImageMosaicWalker.handleFile(ImageMosaicWalker.java:226)
        at
org.geotools.gce.imagemosaic.ImageMosaicDirectoryWalker$MosaicDirectoryWalker.handleFile(ImageMosaicDirectoryWalker.java:96)
        at org.apache.commons.io.DirectoryWalker.walk(DirectoryWalker.java:367)
        at org.apache.commons.io.DirectoryWalker.walk(DirectoryWalker.java:335)
        at
org.geotools.gce.imagemosaic.ImageMosaicDirectoryWalker$MosaicDirectoryWalker.<init>(ImageMosaicDirectoryWalker.java:117)
        at
org.geotools.gce.imagemosaic.ImageMosaicDirectoryWalker.run(ImageMosaicDirectoryWalker.java:203)
        at org.geotools.gce.imagemosaic.Utils.createMosaic(Utils.java:490)
        at org.geotools.gce.imagemosaic.Utils.checkSource(Utils.java:1503)
        at
org.geotools.gce.imagemosaic.ImageMosaicReader.initReaderFromURL(ImageMosaicReader.java:566)
        at
org.geotools.gce.imagemosaic.ImageMosaicReader.<init>(ImageMosaicReader.java:511)
        at
org.geotools.gce.imagemosaic.ImageMosaicFormat.getReader(ImageMosaicFormat.java:571)
        at
org.geotools.gce.imagemosaic.ImageMosaicFormat.getReader(ImageMosaicFormat.java:107)
        at
org.geoserver.catalog.ResourcePool.getGridCoverageReader(ResourcePool.java:1490)
        at
org.geoserver.catalog.ResourcePool.getGridCoverageReader(ResourcePool.java:1436)
        at
org.geoserver.catalog.impl.CoverageStoreInfoImpl.getGridCoverageReader(CoverageStoreInfoImpl.java:53)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at
org.geoserver.catalog.impl.ModificationProxy.invoke(ModificationProxy.java:127)
        at com.sun.proxy.$Proxy25.getGridCoverageReader(Unknown Source)
        at
org.geoserver.web.data.layer.NewLayerPageProvider.getItemsInternal(NewLayerPageProvider.java:86)
        at
org.geoserver.web.data.layer.NewLayerPageProvider.getItems(NewLayerPageProvider.java:47)
        at
org.geoserver.web.wicket.GeoServerDataProvider.getFilteredItems(GeoServerDataProvider.java:202)
        at
org.geoserver.web.data.layer.NewLayerPageProvider.getFilteredItems(NewLayerPageProvider.java:186)
        at
org.geoserver.web.wicket.GeoServerDataProvider.size(GeoServerDataProvider.java:220)
        at
org.geoserver.web.wicket.GeoServerTablePanel$PagerDelegate.updateMatched(GeoServerTablePanel.java:597)
        at
org.geoserver.web.wicket.GeoServerTablePanel$PagerDelegate.<init>(GeoServerTablePanel.java:592)
        at
org.geoserver.web.wicket.GeoServerTablePanel.<init>(GeoServerTablePanel.java:182)
        at
org.geoserver.web.wicket.GeoServerTablePanel.<init>(GeoServerTablePanel.java:96)
        at org.geoserver.web.data.layer.NewLayerPage$1.<init>(NewLayerPage.java:99)
        at org.geoserver.web.data.layer.NewLayerPage.<init>(NewLayerPage.java:98)
        at
org.geoserver.web.data.store.CoverageStoreNewPage.onSuccessfulSave(CoverageStoreNewPage.java:82)
        at
org.geoserver.web.data.store.CoverageStoreNewPage.onSave(CoverageStoreNewPage.java:71)
        at
org.geoserver.web.data.store.AbstractCoverageStorePage$1.onSubmit(AbstractCoverageStorePage.java:139)
        at
org.apache.wicket.ajax.markup.html.form.AjaxSubmitLink$1.onSubmit(AjaxSubmitLink.java:111)
        at
org.apache.wicket.ajax.form.AjaxFormSubmitBehavior$AjaxFormSubmitter.onSubmit(AjaxFormSubmitBehavior.java:215)
        at org.apache.wicket.markup.html.form.Form.delegateSubmit(Form.java:1309)
        at org.apache.wicket.markup.html.form.Form.process(Form.java:976)
        at org.apache.wicket.markup.html.form.Form.onFormSubmitted(Form.java:797)
        at
org.apache.wicket.ajax.form.AjaxFormSubmitBehavior.onEvent(AjaxFormSubmitBehavior.java:171)
        at
org.apache.wicket.ajax.AjaxEventBehavior.respond(AjaxEventBehavior.java:155)
        at
org.apache.wicket.ajax.AbstractDefaultAjaxBehavior.onRequest(AbstractDefaultAjaxBehavior.java:601)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at
org.apache.wicket.RequestListenerInterface.internalInvoke(RequestListenerInterface.java:258)
        at
org.apache.wicket.RequestListenerInterface.invoke(RequestListenerInterface.java:241)
        at
org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler.invokeListener(ListenerInterfaceRequestHandler.java:248)
        at
org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler.respond(ListenerInterfaceRequestHandler.java:234)
        at
org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:895)
        at
org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
        at
org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:265)
        at
org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:222)
        at
org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:293)
        at
org.apache.wicket.protocol.http.WicketFilter.processRequestCycle(WicketFilter.java:261)
        at
org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:203)
        at
org.apache.wicket.protocol.http.WicketServlet.doPost(WicketServlet.java:159)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
        at
org.springframework.web.servlet.mvc.ServletWrappingController.handleRequestInternal(ServletWrappingController.java:165)
        at
org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:177)
        at
org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:52)
        at
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1038)
        at
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:942)
        at
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:998)
        at
org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:901)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
        at
org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:875)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
        at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:865)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1655)
        at
org.geoserver.filters.ThreadLocalsCleanupFilter.doFilter(ThreadLocalsCleanupFilter.java:26)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
        at
org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:69)
        at
org.geoserver.wms.animate.AnimatorFilter.doFilter(AnimatorFilter.java:73)
        at
org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:66)
        at
org.geoserver.filters.SpringDelegatingFilter.doFilter(SpringDelegatingFilter.java:41)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
        at
org.geoserver.platform.AdvancedDispatchFilter.doFilter(AdvancedDispatchFilter.java:37)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
        at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:320)
        at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:70)
        at
org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:127)
        at
org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:91)
        at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:74)
        at
org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)
        at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
        at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:70)
        at
org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:119)
        at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:74)
        at
org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)
        at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
        at
org.geoserver.security.filter.GeoServerAnonymousAuthenticationFilter.doFilter(GeoServerAnonymousAuthenticationFilter.java:51)
        at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
        at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:70)
        at
org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:200)
        at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:74)
        at
org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)
        at
org.geoserver.security.filter.GeoServerUserNamePasswordAuthenticationFilter.doFilter(GeoServerUserNamePasswordAuthenticationFilter.java:112)
        at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
        at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:70)
        at
org.springframework.security.web.authentication.rememberme.RememberMeAuthenticationFilter.doFilter(RememberMeAuthenticationFilter.java:158)
        at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:74)
        at
org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)
        at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
        at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:70)
        at
org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:105)
        at
org.geoserver.security.filter.GeoServerSecurityContextPersistenceFilter$1.doFilter(GeoServerSecurityContextPersistenceFilter.java:52)
        at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:74)
        at
org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)
        at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
        at
org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:215)
        at
org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:178)
        at
org.geoserver.security.GeoServerSecurityFilterChainProxy.doFilter(GeoServerSecurityFilterChainProxy.java:142)
        at
org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:357)
        at
org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:270)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
        at org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:90)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
        at
org.geoserver.filters.XFrameOptionsFilter.doFilter(XFrameOptionsFilter.java:79)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
        at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:42)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
        at
org.geoserver.filters.SessionDebugFilter.doFilter(SessionDebugFilter.java:46)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
        at org.geoserver.filters.FlushSafeFilter.doFilter(FlushSafeFilter.java:42)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
        at
org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:200)
        at
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1634)
        at
org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:533)
        at
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:146)
        at
org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548)
        at
org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
        at
org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:257)
        at
org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1595)
        at
org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:255)
        at
org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1340)
        at
org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:203)
        at
org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:473)
        at
org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1564)
        at
org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:201)
        at
org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1242)
        at
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:144)
        at
org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:220)
        at
org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:126)
        at
org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
        at org.eclipse.jetty.server.Server.handle(Server.java:503)
        at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:364)
        at
org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:260)
        at
org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:305)
        at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103)
        at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:118)
        at
org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:333)
        at
org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:310)
        at
org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:168)
        at
org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:126)
        at
org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:366)
        at
org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:765)
        at
org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:683)
        at java.lang.Thread.run(Unknown Source)
2019-07-02 14:38:20,679 WARN [gce.imagemosaic] - Failure occurred while
collecting the granules
org.apache.commons.io.DirectoryWalker$CancelException: Operation Cancelled
        at
org.apache.commons.io.DirectoryWalker.checkIfCancelled(DirectoryWalker.java:396)
        at org.apache.commons.io.DirectoryWalker.walk(DirectoryWalker.java:368)
        at org.apache.commons.io.DirectoryWalker.walk(DirectoryWalker.java:335)
        at
org.geotools.gce.imagemosaic.ImageMosaicDirectoryWalker$MosaicDirectoryWalker.<init>(ImageMosaicDirectoryWalker.java:117)
        at
org.geotools.gce.imagemosaic.ImageMosaicDirectoryWalker.run(ImageMosaicDirectoryWalker.java:203)
        at org.geotools.gce.imagemosaic.Utils.createMosaic(Utils.java:490)
        at org.geotools.gce.imagemosaic.Utils.checkSource(Utils.java:1503)
        at
org.geotools.gce.imagemosaic.ImageMosaicReader.initReaderFromURL(ImageMosaicReader.java:566)
        at
org.geotools.gce.imagemosaic.ImageMosaicReader.<init>(ImageMosaicReader.java:511)
        at
org.geotools.gce.imagemosaic.ImageMosaicFormat.getReader(ImageMosaicFormat.java:571)
        at
org.geotools.gce.imagemosaic.ImageMosaicFormat.getReader(ImageMosaicFormat.java:107)
        at
org.geoserver.catalog.ResourcePool.getGridCoverageReader(ResourcePool.java:1490)
        at
org.geoserver.catalog.ResourcePool.getGridCoverageReader(ResourcePool.java:1436)
        at
org.geoserver.catalog.impl.CoverageStoreInfoImpl.getGridCoverageReader(CoverageStoreInfoImpl.java:53)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at
org.geoserver.catalog.impl.ModificationProxy.invoke(ModificationProxy.java:127)
        at com.sun.proxy.$Proxy25.getGridCoverageReader(Unknown Source)
        at
org.geoserver.web.data.layer.NewLayerPageProvider.getItemsInternal(NewLayerPageProvider.java:86)
        at
org.geoserver.web.data.layer.NewLayerPageProvider.getItems(NewLayerPageProvider.java:47)
        at
org.geoserver.web.wicket.GeoServerDataProvider.getFilteredItems(GeoServerDataProvider.java:202)
        at
org.geoserver.web.data.layer.NewLayerPageProvider.getFilteredItems(NewLayerPageProvider.java:186)
        at
org.geoserver.web.wicket.GeoServerDataProvider.size(GeoServerDataProvider.java:220)
        at
org.geoserver.web.wicket.GeoServerTablePanel$PagerDelegate.updateMatched(GeoServerTablePanel.java:597)
        at
org.geoserver.web.wicket.GeoServerTablePanel$PagerDelegate.<init>(GeoServerTablePanel.java:592)
        at
org.geoserver.web.wicket.GeoServerTablePanel.<init>(GeoServerTablePanel.java:182)
        at
org.geoserver.web.wicket.GeoServerTablePanel.<init>(GeoServerTablePanel.java:96)
        at org.geoserver.web.data.layer.NewLayerPage$1.<init>(NewLayerPage.java:99)
        at org.geoserver.web.data.layer.NewLayerPage.<init>(NewLayerPage.java:98)
        at
org.geoserver.web.data.store.CoverageStoreNewPage.onSuccessfulSave(CoverageStoreNewPage.java:82)
        at
org.geoserver.web.data.store.CoverageStoreNewPage.onSave(CoverageStoreNewPage.java:71)
        at
org.geoserver.web.data.store.AbstractCoverageStorePage$1.onSubmit(AbstractCoverageStorePage.java:139)
        at
org.apache.wicket.ajax.markup.html.form.AjaxSubmitLink$1.onSubmit(AjaxSubmitLink.java:111)
        at
org.apache.wicket.ajax.form.AjaxFormSubmitBehavior$AjaxFormSubmitter.onSubmit(AjaxFormSubmitBehavior.java:215)
        at org.apache.wicket.markup.html.form.Form.delegateSubmit(Form.java:1309)
        at org.apache.wicket.markup.html.form.Form.process(Form.java:976)
        at org.apache.wicket.markup.html.form.Form.onFormSubmitted(Form.java:797)
        at
org.apache.wicket.ajax.form.AjaxFormSubmitBehavior.onEvent(AjaxFormSubmitBehavior.java:171)
        at
org.apache.wicket.ajax.AjaxEventBehavior.respond(AjaxEventBehavior.java:155)
        at
org.apache.wicket.ajax.AbstractDefaultAjaxBehavior.onRequest(AbstractDefaultAjaxBehavior.java:601)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at
org.apache.wicket.RequestListenerInterface.internalInvoke(RequestListenerInterface.java:258)
        at
org.apache.wicket.RequestListenerInterface.invoke(RequestListenerInterface.java:241)
        at
org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler.invokeListener(ListenerInterfaceRequestHandler.java:248)
        at
org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler.respond(ListenerInterfaceRequestHandler.java:234)
        at
org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:895)
        at
org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
        at
org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:265)
        at
org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:222)
        at
org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:293)
        at
org.apache.wicket.protocol.http.WicketFilter.processRequestCycle(WicketFilter.java:261)
        at
org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:203)
        at
org.apache.wicket.protocol.http.WicketServlet.doPost(WicketServlet.java:159)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
        at
org.springframework.web.servlet.mvc.ServletWrappingController.handleRequestInternal(ServletWrappingController.java:165)
        at
org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:177)
        at
org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:52)
        at
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1038)
        at
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:942)
        at
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:998)
        at
org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:901)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
        at
org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:875)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
        at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:865)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1655)
        at
org.geoserver.filters.ThreadLocalsCleanupFilter.doFilter(ThreadLocalsCleanupFilter.java:26)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
        at
org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:69)
        at
org.geoserver.wms.animate.AnimatorFilter.doFilter(AnimatorFilter.java:73)
        at
org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:66)
        at
org.geoserver.filters.SpringDelegatingFilter.doFilter(SpringDelegatingFilter.java:41)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
        at
org.geoserver.platform.AdvancedDispatchFilter.doFilter(AdvancedDispatchFilter.java:37)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
        at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:320)
        at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:70)
        at
org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:127)
        at
org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:91)
        at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:74)
        at
org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)
        at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
        at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:70)
        at
org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:119)
        at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:74)
        at
org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)
        at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
        at
org.geoserver.security.filter.GeoServerAnonymousAuthenticationFilter.doFilter(GeoServerAnonymousAuthenticationFilter.java:51)
        at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
        at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:70)
        at
org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:200)
        at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:74)
        at
org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)
        at
org.geoserver.security.filter.GeoServerUserNamePasswordAuthenticationFilter.doFilter(GeoServerUserNamePasswordAuthenticationFilter.java:112)
        at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
        at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:70)
        at
org.springframework.security.web.authentication.rememberme.RememberMeAuthenticationFilter.doFilter(RememberMeAuthenticationFilter.java:158)
        at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:74)
        at
org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)
        at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
        at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:70)
        at
org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:105)
        at
org.geoserver.security.filter.GeoServerSecurityContextPersistenceFilter$1.doFilter(GeoServerSecurityContextPersistenceFilter.java:52)
        at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:74)
        at
org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)
        at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
        at
org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:215)
        at
org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:178)
        at
org.geoserver.security.GeoServerSecurityFilterChainProxy.doFilter(GeoServerSecurityFilterChainProxy.java:142)
        at
org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:357)
        at
org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:270)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
        at org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:90)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
        at
org.geoserver.filters.XFrameOptionsFilter.doFilter(XFrameOptionsFilter.java:79)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
        at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:42)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
        at
org.geoserver.filters.SessionDebugFilter.doFilter(SessionDebugFilter.java:46)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
        at org.geoserver.filters.FlushSafeFilter.doFilter(FlushSafeFilter.java:42)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
        at
org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:200)
        at
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1634)
        at
org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:533)
        at
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:146)
        at
org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548)
        at
org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
        at
org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:257)
        at
org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1595)
        at
org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:255)
        at
org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1340)
        at
org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:203)
        at
org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:473)
        at
org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1564)
        at
org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:201)
        at
org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1242)
        at
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:144)
        at
org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:220)
        at
org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:126)
        at
org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
        at org.eclipse.jetty.server.Server.handle(Server.java:503)
        at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:364)
        at
org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:260)
        at
org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:305)
        at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103)
        at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:118)
        at
org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:333)
        at
org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:310)
        at
org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:168)
        at
org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:126)
        at
org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:366)
        at
org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:765)
        at
org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:683)
        at java.lang.Thread.run(Unknown Source)
2019-07-02 14:38:20,692 INFO [geoserver.web] - Getting list of coverages for
saved store file://D:/LER_mosaic/nco
java.lang.RuntimeException: Could not list layers for this store, an error
occurred retrieving them: Failed to create reader from
file://D:/LER_mosaic/nco and hints Hints:
  REPOSITORY       = org.geoserver.catalog.CatalogRepository@1fcdefb                                                                                  
  EXECUTOR_SERVICE = java.util.concurrent.ThreadPoolExecutor@3e1fb7[Running,
pool size = 0, active threads = 0, queued tasks = 0, completed tasks = 0]
System defaults:
  FORCE_LONGITUDE_FIRST_AXIS_ORDER = true                                                
  GRID_COVERAGE_FACTORY            = GridCoverageFactory                                  
    TILE_ENCODING                  = null                                                
  COMPARISON_TOLERANCE             = 1.0E-8                                              
  STYLE_FACTORY                    = StyleFactoryImpl                                    
  FILTER_FACTORY                   = FilterFactoryImpl                                    
  LENIENT_DATUM_SHIFT              = true                                                
  FORCE_AXIS_ORDER_HONORING        = http                                                
  FEATURE_FACTORY                  =
org.geotools.feature.LenientFeatureFactoryImpl@9621f3

        at
org.geoserver.web.data.layer.NewLayerPageProvider.getItemsInternal(NewLayerPageProvider.java:170)
        at
org.geoserver.web.data.layer.NewLayerPageProvider.getItems(NewLayerPageProvider.java:47)
        at
org.geoserver.web.wicket.GeoServerDataProvider.getFilteredItems(GeoServerDataProvider.java:202)
        at
org.geoserver.web.data.layer.NewLayerPageProvider.getFilteredItems(NewLayerPageProvider.java:186)
        at
org.geoserver.web.wicket.GeoServerDataProvider.size(GeoServerDataProvider.java:220)
        at
org.geoserver.web.wicket.GeoServerTablePanel$PagerDelegate.updateMatched(GeoServerTablePanel.java:597)
        at
org.geoserver.web.wicket.GeoServerTablePanel$PagerDelegate.<init>(GeoServerTablePanel.java:592)
        at
org.geoserver.web.wicket.GeoServerTablePanel.<init>(GeoServerTablePanel.java:182)
        at
org.geoserver.web.wicket.GeoServerTablePanel.<init>(GeoServerTablePanel.java:96)
        at org.geoserver.web.data.layer.NewLayerPage$1.<init>(NewLayerPage.java:99)
        at org.geoserver.web.data.layer.NewLayerPage.<init>(NewLayerPage.java:98)
        at
org.geoserver.web.data.store.CoverageStoreNewPage.onSuccessfulSave(CoverageStoreNewPage.java:82)
        at
org.geoserver.web.data.store.CoverageStoreNewPage.onSave(CoverageStoreNewPage.java:71)
        at
org.geoserver.web.data.store.AbstractCoverageStorePage$1.onSubmit(AbstractCoverageStorePage.java:139)
        at
org.apache.wicket.ajax.markup.html.form.AjaxSubmitLink$1.onSubmit(AjaxSubmitLink.java:111)
        at
org.apache.wicket.ajax.form.AjaxFormSubmitBehavior$AjaxFormSubmitter.onSubmit(AjaxFormSubmitBehavior.java:215)
        at org.apache.wicket.markup.html.form.Form.delegateSubmit(Form.java:1309)
        at org.apache.wicket.markup.html.form.Form.process(Form.java:976)
        at org.apache.wicket.markup.html.form.Form.onFormSubmitted(Form.java:797)
        at
org.apache.wicket.ajax.form.AjaxFormSubmitBehavior.onEvent(AjaxFormSubmitBehavior.java:171)
        at
org.apache.wicket.ajax.AjaxEventBehavior.respond(AjaxEventBehavior.java:155)
        at
org.apache.wicket.ajax.AbstractDefaultAjaxBehavior.onRequest(AbstractDefaultAjaxBehavior.java:601)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at
org.apache.wicket.RequestListenerInterface.internalInvoke(RequestListenerInterface.java:258)
        at
org.apache.wicket.RequestListenerInterface.invoke(RequestListenerInterface.java:241)
        at
org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler.invokeListener(ListenerInterfaceRequestHandler.java:248)
        at
org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler.respond(ListenerInterfaceRequestHandler.java:234)
        at
org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:895)
        at
org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
        at
org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:265)
        at
org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:222)
        at
org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:293)
        at
org.apache.wicket.protocol.http.WicketFilter.processRequestCycle(WicketFilter.java:261)
        at
org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:203)
        at
org.apache.wicket.protocol.http.WicketServlet.doPost(WicketServlet.java:159)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
        at
org.springframework.web.servlet.mvc.ServletWrappingController.handleRequestInternal(ServletWrappingController.java:165)
        at
org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:177)
        at
org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:52)
        at
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1038)
        at
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:942)
        at
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:998)
        at
org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:901)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
        at
org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:875)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
        at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:865)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1655)
        at
org.geoserver.filters.ThreadLocalsCleanupFilter.doFilter(ThreadLocalsCleanupFilter.java:26)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
        at
org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:69)
        at
org.geoserver.wms.animate.AnimatorFilter.doFilter(AnimatorFilter.java:73)
        at
org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:66)
        at
org.geoserver.filters.SpringDelegatingFilter.doFilter(SpringDelegatingFilter.java:41)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
        at
org.geoserver.platform.AdvancedDispatchFilter.doFilter(AdvancedDispatchFilter.java:37)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
        at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:320)
        at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:70)
        at
org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:127)
        at
org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:91)
        at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:74)
        at
org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)
        at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
        at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:70)
        at
org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:119)
        at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:74)
        at
org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)
        at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
        at
org.geoserver.security.filter.GeoServerAnonymousAuthenticationFilter.doFilter(GeoServerAnonymousAuthenticationFilter.java:51)
        at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
        at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:70)
        at
org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:200)
        at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:74)
        at
org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)
        at
org.geoserver.security.filter.GeoServerUserNamePasswordAuthenticationFilter.doFilter(GeoServerUserNamePasswordAuthenticationFilter.java:112)
        at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
        at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:70)
        at
org.springframework.security.web.authentication.rememberme.RememberMeAuthenticationFilter.doFilter(RememberMeAuthenticationFilter.java:158)
        at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:74)
        at
org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)
        at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
        at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:70)
        at
org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:105)
        at
org.geoserver.security.filter.GeoServerSecurityContextPersistenceFilter$1.doFilter(GeoServerSecurityContextPersistenceFilter.java:52)
        at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:74)
        at
org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)
        at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
        at
org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:215)
        at
org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:178)
        at
org.geoserver.security.GeoServerSecurityFilterChainProxy.doFilter(GeoServerSecurityFilterChainProxy.java:142)
        at
org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:357)
        at
org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:270)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
        at org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:90)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
        at
org.geoserver.filters.XFrameOptionsFilter.doFilter(XFrameOptionsFilter.java:79)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
        at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:42)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
        at
org.geoserver.filters.SessionDebugFilter.doFilter(SessionDebugFilter.java:46)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
        at org.geoserver.filters.FlushSafeFilter.doFilter(FlushSafeFilter.java:42)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
        at
org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:200)
        at
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
        at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1634)
        at
org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:533)
        at
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:146)
        at
org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548)
        at
org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
        at
org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:257)
        at
org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1595)
        at
org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:255)
        at
org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1340)
        at
org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:203)
        at
org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:473)
        at
org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1564)
        at
org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:201)
        at
org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1242)
        at
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:144)
        at
org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:220)
        at
org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:126)
        at
org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
        at org.eclipse.jetty.server.Server.handle(Server.java:503)
        at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:364)
        at
org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:260)
        at
org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:305)
        at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103)
        at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:118)
        at
org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:333)
        at
org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:310)
        at
org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:168)
        at
org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:126)
        at
org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:366)
        at
org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:765)
        at
org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:683)
        at java.lang.Thread.run(Unknown Source)
Caused by: java.io.IOException: Failed to create reader from
file://D:/LER_mosaic/nco and hints Hints:
  REPOSITORY       = org.geoserver.catalog.CatalogRepository@1fcdefb                                                                                  
  EXECUTOR_SERVICE = java.util.concurrent.ThreadPoolExecutor@3e1fb7[Running,
pool size = 0, active threads = 0, queued tasks = 0, completed tasks = 0]
System defaults:
  FORCE_LONGITUDE_FIRST_AXIS_ORDER = true                                                
  GRID_COVERAGE_FACTORY            = GridCoverageFactory                                  
    TILE_ENCODING                  = null                                                
  COMPARISON_TOLERANCE             = 1.0E-8                                              
  STYLE_FACTORY                    = StyleFactoryImpl                                    
  FILTER_FACTORY                   = FilterFactoryImpl                                    
  LENIENT_DATUM_SHIFT              = true                                                
  FORCE_AXIS_ORDER_HONORING        = http                                                
  FEATURE_FACTORY                  =
org.geotools.feature.LenientFeatureFactoryImpl@9621f3

        at
org.geoserver.catalog.ResourcePool.getGridCoverageReader(ResourcePool.java:1492)
        at
org.geoserver.catalog.ResourcePool.getGridCoverageReader(ResourcePool.java:1436)
        at
org.geoserver.catalog.impl.CoverageStoreInfoImpl.getGridCoverageReader(CoverageStoreInfoImpl.java:53)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at
org.geoserver.catalog.impl.ModificationProxy.invoke(ModificationProxy.java:127)
        at com.sun.proxy.$Proxy25.getGridCoverageReader(Unknown Source)
        at
org.geoserver.web.data.layer.NewLayerPageProvider.getItemsInternal(NewLayerPageProvider.java:86)
        ... 141 more




--
Sent from: http://osgeo-org.1560.x6.nabble.com/GeoServer-User-f3786390.html


_______________________________________________
Geoserver-users mailing list

Please make sure you read the following two resources before posting to this list:
- Earning your support instead of buying it, but Ian Turton: http://www.ianturton.com/talks/foss4g.html#/
- The GeoServer user list posting guidelines: http://geoserver.org/comm/userlist-guidelines.html

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


[hidden email]
https://lists.sourceforge.net/lists/listinfo/geoserver-users
Reply | Threaded
Open this post in threaded view
|

Re: NetCDF with custom dimensions as imageMosaic

GeoServer - User mailing list
Edit:

I have now manipulated the netCDF-file according to the example (Polyphemus
DLR data) described in:
https://geoserver.geo-solutions.it/edu/en/multidim/netcdf/netcdf_basics.html#netcdf-format

I changed my wavelength dimension to an artificial z=elevation dimension
(even that this is physically wrong)
My month dimension was changed to standard time dimension.

long_name, units attributes were set accordingly.

Geoserver seem to accept now the time dimension.

For the arbitrary dimension z I am getting still the error message:
/2019-07-05 17:52:45,105 WARN [imageio.netcdf] - Unsupported axis: float
z(z=26);
  :units = "meters";
  :long_name = "height";
 in input: file:/ler_2007.nc has been found
2019-07-05 17:52:45,465 WARN [io.netcdf] - Unable to connect/

Question is: What is exactly the request of geoserver for definition of
dimensions?
Does Geoserver need attributes (e.g. long_name, units) to its dimensions?
Why are custom dimension not possible to implement, or how to do it
correctly?

Many thanks.
MiriamK



--
Sent from: http://osgeo-org.1560.x6.nabble.com/GeoServer-User-f3786390.html


_______________________________________________
Geoserver-users mailing list

Please make sure you read the following two resources before posting to this list:
- Earning your support instead of buying it, but Ian Turton: http://www.ianturton.com/talks/foss4g.html#/
- The GeoServer user list posting guidelines: http://geoserver.org/comm/userlist-guidelines.html

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


[hidden email]
https://lists.sourceforge.net/lists/listinfo/geoserver-users
Reply | Threaded
Open this post in threaded view
|

Re: NetCDF with custom dimensions as imageMosaic

GeoServer - User mailing list
Since nobody was answering yet, I assume there are no ideas or solutions to
my problem.

I would like to check now the source code of geoserver, where the
definitions of netCDF-files are set.

Does anybody (developers) can tell me, where is the source code for netCDF
custom/default dimensions and the settings defined? Which folder and file?

Many thanks.
MiriamK



--
Sent from: http://osgeo-org.1560.x6.nabble.com/GeoServer-User-f3786390.html


_______________________________________________
Geoserver-users mailing list

Please make sure you read the following two resources before posting to this list:
- Earning your support instead of buying it, but Ian Turton: http://www.ianturton.com/talks/foss4g.html#/
- The GeoServer user list posting guidelines: http://geoserver.org/comm/userlist-guidelines.html

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


[hidden email]
https://lists.sourceforge.net/lists/listinfo/geoserver-users
Reply | Threaded
Open this post in threaded view
|

Re: NetCDF with custom dimensions as imageMosaic

Daniele Romagnoli-3
Hi Miriam,
sorry for no answers in the past.
I think that all the other devs were busy or, as you said, have no good feedbacks for you.
I personally didn't see your latest email (somehow buried within all the other mailing lists), sorry about that.

Most part of the NetCDF code is at GeoTools level in the coverage-multidim containing some common API for multidimensional classes and a module specific to netcdf:

The GeoServer multidimensional training material that you have already checked contains some additional information.
Most part of custom dimensions is handled at ImageMosaic level with additional mapping based on properties extractors where the NetCDF lowlevel part mainly deal with the TZXY dimensions and related coordinate axis. 
As far as I remember, the low level binary index in NetCDF has specific mappings for time and elevation related dimensions.
This is the class reporting that warning message related to unsupported axis type:

Best Regards,
Daniele

 
 




On Wed, Jul 17, 2019 at 12:00 PM MiriamK via Geoserver-users <[hidden email]> wrote:
Since nobody was answering yet, I assume there are no ideas or solutions to
my problem.

I would like to check now the source code of geoserver, where the
definitions of netCDF-files are set.

Does anybody (developers) can tell me, where is the source code for netCDF
custom/default dimensions and the settings defined? Which folder and file?

Many thanks.
MiriamK



--
Sent from: http://osgeo-org.1560.x6.nabble.com/GeoServer-User-f3786390.html


_______________________________________________
Geoserver-users mailing list

Please make sure you read the following two resources before posting to this list:
- Earning your support instead of buying it, but Ian Turton: http://www.ianturton.com/talks/foss4g.html#/
- The GeoServer user list posting guidelines: http://geoserver.org/comm/userlist-guidelines.html

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


[hidden email]
https://lists.sourceforge.net/lists/listinfo/geoserver-users


--
Regards,
Daniele Romagnoli
==
GeoServer Professional Services from the experts! Visit http://goo.gl/it488V for more information.
==

Ing. Daniele Romagnoli
Senior Software Engineer

GeoSolutions S.A.S.
Via di Montramito 3/A
55054  Massarosa (LU)
Italy
phone: +39 0584 962313
fax:      +39 0584 1660272


-------------------------------------------------------

Con riferimento alla normativa sul trattamento dei dati personali (Reg. UE 2016/679 - Regolamento generale sulla protezione dei dati “GDPR”), si precisa che ogni circostanza inerente alla presente email (il suo contenuto, gli eventuali allegati, etc.) è un dato la cui conoscenza è riservata al/i solo/i destinatario/i indicati dallo scrivente. Se il messaggio Le è giunto per errore, è tenuta/o a cancellarlo, ogni altra operazione è illecita. Le sarei comunque grato se potesse darmene notizia.

This email is intended only for the person or entity to which it is addressed and may contain information that is privileged, confidential or otherwise protected from disclosure. We remind that - as provided by European Regulation 2016/679 “GDPR” - copying, dissemination or use of this e-mail or the information herein by anyone other than the intended recipient is prohibited. If you have received this email by mistake, please notify us immediately by telephone or e-mail.


_______________________________________________
Geoserver-users mailing list

Please make sure you read the following two resources before posting to this list:
- Earning your support instead of buying it, but Ian Turton: http://www.ianturton.com/talks/foss4g.html#/
- The GeoServer user list posting guidelines: http://geoserver.org/comm/userlist-guidelines.html

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


[hidden email]
https://lists.sourceforge.net/lists/listinfo/geoserver-users
Reply | Threaded
Open this post in threaded view
|

Re: NetCDF with custom dimensions as imageMosaic

GeoServer - User mailing list
Hi Daniele


Thank you very much for your response and the links to the source code. This
was really helpful in understanding better geoserver. I was digging there
now, but still I am not succesul in implementing the netCDF.

Based on your tip with the geotools-folders, I have found also the examples,
with which you were testing several netCDF settings for Geoserver.
(here:
geotools-master/modules/plugin/coverage-multidim/netcdf/src/test/resources/org/geotools/coverage/io/netcdf/test-data/*)
With these examples you can understand much better how Geoserver might
request the formatting, setting and property-files.

My error message is still, that Geoserver does not recognize my additional
custom dimension.
Code stopping at:
NetCDFGeoreferenceManager.java line 602ff, where !ignored.contains(axisName)
seems to be true causing the warning "Unsupported axis: "
So this variable does not contain my dimension.

I found the code, where these dimensions are defined: NetCDFUtilities.java

It's difficult to follow the code until the final definition, where these
variables are getting filled. I found AncillaryFileManager.java and the
definition of MultipleBandsDimension. Please correct me, if I am wrong.

An example in the geotools/test-data folder, namely the station.nc and
related *.xml *.properties files give an example how I might define custom
dimensions. This example could be a similar issue like mine. Still, I could
not implement neither the station.nc data (with the already prepared
Input-files) nor my own netCDF with accordingly defined settings.

I also tested my netCDF by manipulating it with nco (renaming dimensions
(wavelength-> bands/channel/"elevation", chaning datatypes double to float,
nc3 to nc4, renaming attributes…)

Again I checked all Geosolution-slides describing implementation of
netCDF-data and custom dimensions. It's just stating, that it is possible to
implement, but not how to. What are the special requests on the *.xml,
*.properties, *.nc files? Are the some requests on the dimension-namings
hard-coded in geoserver (besides COARDS/CF)? How can I customize reading of
my Input?

So my file would contain a variable:
float variable(time, wavelength, latitude, longitude)
and its according dimensions. time, latitude, longitude are no problem.
Geoserver understands them. Only wavelength is not possible to feed.

Any suggestion appreciated.
Kind regards.
MiriamK


Example of my trial:
----------------------------------------------------------------------------------------------
indexer.xml

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Indexer>
    <domains>
        <domain name="time">
            <attributes><attribute>time</attribute></attributes>
        </domain>
    </domains>
    <coverages>
        <coverage>
          <name>ler</name>
          <schema name="ler" >
             
<attributes>the_geom:Polygon,imageindex:Integer,location:String,time:java.util.Date</attributes>
          </schema>
          <domains>
            <domain ref="time" />
          </domains>
        </coverage>
    </coverages>
    <parameters>
        <parameter name="AbsolutePath" value="true" />
        <parameter name="AuxiliaryFile" value="netcdf_auxiliary.xml" />
    </parameters>
    <multipleBandsDimensions>
        <multipleBandsDimension>
            <name>wavelength</name>
           
<bandsNames>wl328,wl335,wl340,wl354,wl367,wl380,wl388,wl416,wl425,wl440,wl463,wl494,wl510,wl526,wl546,wl555,wl564,wl585,wl610,wl640,wl670,wl685,wl697,wl712,wl758,wl772</bandsNames>
        </multipleBandsDimension>
    </multipleBandsDimensions>
</Indexer>

----------------------------------------------------------------------------------------------
auxiliary.xml

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Indexer>
    <coverages>
        <coverage>
            <schema name="ler">
               
<attributes>the_geom:Polygon,imageindex:Integer,time:java.util.Date</attributes>
            </schema>
            <origName>ler</origName>
            <name>ler</name>
        </coverage>
    </coverages>
    <multipleBandsDimensions>
        <multipleBandsDimension>
            <name>wavelength</name>
           
<bandsNames>wl328,wl335,wl340,wl354,wl367,wl380,wl388,wl416,wl425,wl440,wl463,wl494,wl510,wl526,wl546,wl555,wl564,wl585,wl610,wl640,wl670,wl685,wl697,wl712,wl758,wl772</bandsNames>
        </multipleBandsDimension>
    </multipleBandsDimensions>
</Indexer>




--
Sent from: http://osgeo-org.1560.x6.nabble.com/GeoServer-User-f3786390.html


_______________________________________________
Geoserver-users mailing list

Please make sure you read the following two resources before posting to this list:
- Earning your support instead of buying it, but Ian Turton: http://www.ianturton.com/talks/foss4g.html#/
- The GeoServer user list posting guidelines: http://geoserver.org/comm/userlist-guidelines.html

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


[hidden email]
https://lists.sourceforge.net/lists/listinfo/geoserver-users
Reply | Threaded
Open this post in threaded view
|

Re: NetCDF with custom dimensions as imageMosaic

GeoServer - User mailing list
Hi Daniele and Geoserver-Users,

I have built now a workaround to my problem. NetCDF with custum dimensions
can be now implemented to Geoserver, even that it is not implented directly,
as described in the Geosolution slides or examples shown (Polyphemus,
windfields e.g.).
https://geoserver.geo-solutions.it/edu/en/multidim/mosaic_config/netcdf_mosaic.html
http://osgeo-org.1560.x6.nabble.com/Netcdf-import-error-Netcdf-supported-formats-td5370365.html
I could not reproduce these solutions. If anybody has still some hints on
this, I would still appreciate feedback.


So instead of having the custum dimensions, like wavelength, versionnumber,
etc within the netCDF-file, I was separating the Files into several small
files, each consisting basically only of one layer with regular dimensions
lat/lon.

Custom dimension are included then in the filenaming only.
e.g. file_YYYYMMDD_WAVELENGTH_VERSIONNO.nc

Now custom dimensions could be defined properly with Collectors in the
indexer.xml.

It can be, that the original file was too big (1.2GB per file).
Now the layers are separated in several small layer-netCDF-files of size
~145KB.
Question to the developers: Is there a size limit for netCDF-files existing?

Or implementation of custom dimensions within one single netCDF was not
working properly.
----------------------------------------------------------------
*Summary of my solution:*
Custom dimension are included in the filenaming externally.
e.g. file_YYYYMMDD_WAVELENGTH_VERSIONNO.nc

for each custom dimension the domain is defined, referring to a collector
(indexer.xml)

      <domain name="wavelength">
        <attributes><attribute
ref="wavelengthCollector">wavelength</attribute></attributes>
      </domain>


the custom dimension is named in the scheme (indexer.xml)

        <schema name="default" >
           
<attributes>the_geom:Polygon,location:String,imageindex:Integer,time:java.util.Date,wavelength:java.lang.Integer,version:java.lang.String</attributes>
        </schema>


the layer variable refers to the custom dimension domain (indexer.xml)

        <coverage>
            <name>variable</name>
            <schema ref="default"></schema>
            <domains>
              <domain ref="time" />
              <domain ref="wavelength" />


the collector defines the dimension extraction from filename (indexer.xml)

        <collector name="wavelengthCollector">
            <value>[0-9]{3}(?=\.)</value>
            <spi>FloatFileNameExtractorSPI</spi>
            <mapped>wavelength</mapped>
        </collector>


an auxiliary .xml has the same scheme stored
        <parameter name="AuxiliaryFile" value="_auxfile.xml" />

Request of custom dimensions is then with
&dim_wavelength=XX

----------------------------------------------------------------

Kind regards
MiriamK




--
Sent from: http://osgeo-org.1560.x6.nabble.com/GeoServer-User-f3786390.html


_______________________________________________
Geoserver-users mailing list

Please make sure you read the following two resources before posting to this list:
- Earning your support instead of buying it, but Ian Turton: http://www.ianturton.com/talks/foss4g.html#/
- The GeoServer user list posting guidelines: http://geoserver.org/comm/userlist-guidelines.html

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


[hidden email]
https://lists.sourceforge.net/lists/listinfo/geoserver-users