0

I ́m using GeoServer 2.20.1 with the netCDF plugin (geoserver-2.20.1-netcdf-plugin.zip) on a Tomcat 9 locally on my Mac (localhost:8080).

I ́m trying to add a 4d netcdf file structure (filename: junker_v1.nc) into geoserver, but I ́m getting always the error:

"Could not list layers for this store, an error occurred retrieving them: Failed to create reader from file"

Screenshot error message

The error logs in geoserver are the following:

2022年01月20日 17:34:23,310 INFO [org.geoserver.web] - Getting list of coverages for saved store file:data/netCDF/junker_v1.nc
java.lang.RuntimeException: Could not list layers for this store, an error occurred retrieving them: Failed to create reader from file:data/netCDF/junker_v1.nc and hints Hints:
 REPOSITORY = org.geoserver.catalog.CatalogRepository@1ab79b32 
 EXECUTOR_SERVICE = java.util.concurrent.ThreadPoolExecutor@6e69bf6a[Running, pool size = 0, active threads = 0, queued tasks = 0, completed tasks = 0]
System defaults:
 GRID_COVERAGE_FACTORY = GridCoverageFactory 
 TILE_ENCODING = null 
 FEATURE_FACTORY = org.geotools.feature.LenientFeatureFactoryImpl@145487a5
 FILTER_FACTORY = FilterFactoryImpl 
 COMPARISON_TOLERANCE = 1.0E-8 
 FORCE_LONGITUDE_FIRST_AXIS_ORDER = true 
 LENIENT_DATUM_SHIFT = true 
 FORCE_AXIS_ORDER_HONORING = http 
 STYLE_FACTORY = StyleFactoryImpl 
 at org.geoserver.web.data.layer.NewLayerPageProvider.getItemsInternal(NewLayerPageProvider.java:181)
 at org.geoserver.web.data.layer.NewLayerPageProvider.getItems(NewLayerPageProvider.java:60)
 at org.geoserver.web.wicket.GeoServerDataProvider.getFilteredItems(GeoServerDataProvider.java:190)
 at org.geoserver.web.data.layer.NewLayerPageProvider.getFilteredItems(NewLayerPageProvider.java:197)
 at org.geoserver.web.wicket.GeoServerDataProvider.size(GeoServerDataProvider.java:208)
 at org.geoserver.web.wicket.GeoServerTablePanel$PagerDelegate.updateMatched(GeoServerTablePanel.java:662)
 at org.geoserver.web.wicket.GeoServerTablePanel$PagerDelegate.<init>(GeoServerTablePanel.java:657)
 at org.geoserver.web.wicket.GeoServerTablePanel.<init>(GeoServerTablePanel.java:236)
 at org.geoserver.web.wicket.GeoServerTablePanel.<init>(GeoServerTablePanel.java:105)
 at org.geoserver.web.data.layer.NewLayerPage1ドル.<init>(NewLayerPage.java:111)
 at org.geoserver.web.data.layer.NewLayerPage.<init>(NewLayerPage.java:110)
 at org.geoserver.web.data.store.CoverageStoreNewPage.onSuccessfulSave(CoverageStoreNewPage.java:86)
 at org.geoserver.web.data.store.CoverageStoreNewPage.onSave(CoverageStoreNewPage.java:71)
 at org.geoserver.web.data.store.AbstractCoverageStorePage1ドル.onSubmit(AbstractCoverageStorePage.java:138)
 at org.apache.wicket.ajax.markup.html.form.AjaxSubmitLink1ドル.onSubmit(AjaxSubmitLink.java:111)
 at org.apache.wicket.ajax.form.AjaxFormSubmitBehavior$AjaxFormSubmitter.onSubmit(AjaxFormSubmitBehavior.java:218)
 at org.apache.wicket.markup.html.form.Form.delegateSubmit(Form.java:1312)
 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:174)
 at org.apache.wicket.ajax.AjaxEventBehavior.respond(AjaxEventBehavior.java:155)
 at org.apache.wicket.ajax.AbstractDefaultAjaxBehavior.onRequest(AbstractDefaultAjaxBehavior.java:601)
 at sun.reflect.GeneratedMethodAccessor436.invoke(Unknown Source)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 at java.lang.reflect.Method.invoke(Method.java:498)
 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:652)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:733)
 at org.springframework.web.servlet.mvc.ServletWrappingController.handleRequestInternal(ServletWrappingController.java:166)
 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:1040)
 at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:943)
 at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
 at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:909)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:652)
 at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:733)
 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:227)
 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
 at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
 at org.geoserver.filters.ThreadLocalsCleanupFilter.doFilter(ThreadLocalsCleanupFilter.java:28)
 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
 at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:73)
 at org.geoserver.ows.HTTPHeadersCollector.doFilter(HTTPHeadersCollector.java:48)
 at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:70)
 at org.geoserver.filters.SpringDelegatingFilter.doFilter(SpringDelegatingFilter.java:43)
 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
 at org.geoserver.platform.AdvancedDispatchFilter.doFilter(AdvancedDispatchFilter.java:39)
 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
 at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:320)
 at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:71)
 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:75)
 at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
 at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
 at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:71)
 at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:119)
 at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:75)
 at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
 at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
 at org.geoserver.security.filter.GeoServerAnonymousAuthenticationFilter.doFilter(GeoServerAnonymousAuthenticationFilter.java:53)
 at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
 at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:71)
 at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:200)
 at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:75)
 at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
 at org.geoserver.security.filter.GeoServerUserNamePasswordAuthenticationFilter.doFilter(GeoServerUserNamePasswordAuthenticationFilter.java:122)
 at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
 at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:71)
 at org.springframework.security.web.authentication.rememberme.RememberMeAuthenticationFilter.doFilter(RememberMeAuthenticationFilter.java:158)
 at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:75)
 at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
 at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
 at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:71)
 at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:105)
 at org.geoserver.security.filter.GeoServerSecurityContextPersistenceFilter1ドル.doFilter(GeoServerSecurityContextPersistenceFilter.java:52)
 at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:75)
 at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
 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:358)
 at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:271)
 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
 at org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:102)
 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
 at org.geoserver.filters.XFrameOptionsFilter.doFilter(XFrameOptionsFilter.java:77)
 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
 at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:48)
 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
 at org.geoserver.filters.SessionDebugFilter.doFilter(SessionDebugFilter.java:49)
 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
 at org.geoserver.filters.FlushSafeFilter.doFilter(FlushSafeFilter.java:42)
 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
 at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
 at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
 at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202)
 at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)
 at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:542)
 at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:143)
 at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
 at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:687)
 at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)
 at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:357)
 at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:374)
 at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
 at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893)
 at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1707)
 at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
 at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
 at java.lang.Thread.run(Thread.java:748)
Caused by: java.io.IOException: Failed to create reader from file:data/netCDF/junker_v1.nc and hints Hints:
 REPOSITORY = org.geoserver.catalog.CatalogRepository@1ab79b32 
 EXECUTOR_SERVICE = java.util.concurrent.ThreadPoolExecutor@6e69bf6a[Running, pool size = 0, active threads = 0, queued tasks = 0, completed tasks = 0]
System defaults:
 GRID_COVERAGE_FACTORY = GridCoverageFactory 
 TILE_ENCODING = null 
 FEATURE_FACTORY = org.geotools.feature.LenientFeatureFactoryImpl@145487a5
 FILTER_FACTORY = FilterFactoryImpl 
 COMPARISON_TOLERANCE = 1.0E-8 
 FORCE_LONGITUDE_FIRST_AXIS_ORDER = true 
 LENIENT_DATUM_SHIFT = true 
 FORCE_AXIS_ORDER_HONORING = http 
 STYLE_FACTORY = StyleFactoryImpl 
 at org.geoserver.catalog.ResourcePool.getGridCoverageReader(ResourcePool.java:1575)
 at org.geoserver.catalog.ResourcePool.getGridCoverageReader(ResourcePool.java:1518)
 at org.geoserver.catalog.impl.CoverageStoreInfoImpl.getGridCoverageReader(CoverageStoreInfoImpl.java:57)
 at sun.reflect.GeneratedMethodAccessor467.invoke(Unknown Source)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 at java.lang.reflect.Method.invoke(Method.java:498)
 at org.geoserver.catalog.impl.ModificationProxy.invoke(ModificationProxy.java:129)
 at com.sun.proxy.$Proxy30.getGridCoverageReader(Unknown Source)
 at org.geoserver.web.data.layer.NewLayerPageProvider.getItemsInternal(NewLayerPageProvider.java:98)
 ... 139 more
2022年01月20日 17:34:23,311 TRACE [org.geoserver.config] - org.geoserver.catalog.event.impl.CatalogModifyEventImpl@54776a00 :handleModifyEvent
2022年01月20日 17:34:23,312 DEBUG [org.geoserver.config] - Persisted com.sun.proxy.$Proxy45 to global.xml
2022年01月20日 17:34:23,313 DEBUG [org.geoserver.config] - Removing coverage store testNETCDF-4d
2022年01月20日 17:34:23,314 DEBUG [org.geoserver.config] - Persisted com.sun.proxy.$Proxy45 to global.xml
2022年01月20日 17:34:23,317 DEBUG [org.geoserver] - Thread 111 locking in mode WRITE
2022年01月20日 17:34:23,317 DEBUG [org.geoserver] - Thread 111 releasing the lock in mode WRITE
2022年01月20日 17:34:23,318 DEBUG [org.geoserver.filters] - Compressing output for mimetype: text/xml;charset=UTF-8
2022年01月20日 17:34:23,319 DEBUG [org.geoserver.security.filter.GeoServerSecurityContextPersistenceFilter1ドル] - SecurityContextHolder now cleared, as request processing completed
2022年01月20日 17:34:24,231 TRACE [org.geoserver.platform.resource] - polling contents of /Library/Tomcat/apache-tomcat-9.0.44/webapps/geoserver/data/gwc-layers
2022年01月20日 17:34:24,234 TRACE [org.geoserver.platform.resource] - delta computed in 3ms for /Library/Tomcat/apache-tomcat-9.0.44/webapps/geoserver/data/gwc-layers
2022年01月20日 17:34:29,235 TRACE [org.geoserver.platform.resource] - polling contents of /Library/Tomcat/apache-tomcat-9.0.44/webapps/geoserver/data/gwc-layers
2022年01月20日 17:34:29,236 TRACE [org.geoserver.platform.resource] - delta computed in 793us for /Library/Tomcat/apache-tomcat-9.0.44/webapps/geoserver/data/gwc-layers
2022年01月20日 17:34:34,238 TRACE [org.geoserver.platform.resource] - polling contents of /Library/Tomcat/apache-tomcat-9.0.44/webapps/geoserver/data/gwc-layers
2022年01月20日 17:34:34,238 TRACE [org.geoserver.platform.resource] - delta computed in 398us for /Library/Tomcat/apache-tomcat-9.0.44/webapps/geoserver/data/gwc-layers
2022年01月20日 17:34:38,015 DEBUG [org.geoserver.security.IncludeQueryStringAntPathRequestMatcher] - Checking match of request : 'Path: /web/wicket/bookmarkable/org.geoserver.web.admin.logpage, QueryString: filter=false'; against '/web/**'
2022年01月20日 17:34:38,015 DEBUG [org.geoserver.security.IncludeQueryStringAntPathRequestMatcher] - Matched Path: /web/wicket/bookmarkable/org.geoserver.web.admin.logpage, QueryString: filter=false with /web/**
2022年01月20日 17:34:38,017 DEBUG [org.geoserver.ows] - Could not find a layer group named web
2022年01月20日 17:34:38,017 DEBUG [org.geoserver.ows] - Could not find a layer group named web
2022年01月20日 17:34:38,017 DEBUG [org.geoserver.ows] - Could not find a layer group named web
2022年01月20日 17:34:38,017 DEBUG [org.geoserver.ows] - Could not find a layer group named web
2022年01月20日 17:34:38,018 DEBUG [org.geoserver] - Thread 109 locking in mode READ
2022年01月20日 17:34:38,018 DEBUG [org.geoserver] - Thread 109 got the lock in mode READ
2022年01月20日 17:34:38,087 DEBUG [org.geoserver] - Thread 109 locking in mode READ
2022年01月20日 17:34:38,087 DEBUG [org.geoserver] - Thread 109 releasing the lock in mode READ
2022年01月20日 17:34:38,088 DEBUG [org.geoserver.security.filter.GeoServerSecurityContextPersistenceFilter1ドル] - SecurityContextHolder now cleared, as request processing completed
2022年01月20日 17:34:38,091 DEBUG [org.geoserver.security.IncludeQueryStringAntPathRequestMatcher] - Checking match of request : 'Path: /web/wicket/bookmarkable/org.geoserver.web.admin.logpage, QueryString: 42&filter=false'; against '/web/**'
2022年01月20日 17:34:38,092 DEBUG [org.geoserver.security.IncludeQueryStringAntPathRequestMatcher] - Matched Path: /web/wicket/bookmarkable/org.geoserver.web.admin.logpage, QueryString: 42&filter=false with /web/**
2022年01月20日 17:34:38,094 DEBUG [org.geoserver.ows] - Could not find a layer group named web
2022年01月20日 17:34:38,094 DEBUG [org.geoserver.ows] - Could not find a layer group named web
2022年01月20日 17:34:38,094 DEBUG [org.geoserver.ows] - Could not find a layer group named web
2022年01月20日 17:34:38,094 DEBUG [org.geoserver.ows] - Could not find a layer group named web

complete log file here: geoserver.log

I have followed the tutorial: https://geoserver.geo-solutions.it/multidim/multidim/netcdf/netcdf_config.html#netcdf

Does anybody know why the error occur? The error logs are not really clear for me, but it seems geoserver has problems to handle the 4th dimension.

I tried the same with a netcdf structure in 3d and it works like a charm - geoserver could list the layers.

enter image description here

PolyGeo
65.5k29 gold badges115 silver badges349 bronze badges
asked Jan 20, 2022 at 16:28
0

1 Answer 1

2

Looking at the stack trace, there is some issue setting up the variables.

While I cannot be sure, the likely cause is that your NetCDF is not copliant with the COARDS convention, a requirement for GeoServer to actually make sense of the contents.

See also: https://docs.geoserver.org/stable/en/user/extensions/netcdf/netcdf.html#notes-on-supported-netcdfs

It may be possible to make GeoServer read that NetCDF anyways, but it's likely going to require some development.

answered Jan 21, 2022 at 11:43

Your Answer

Draft saved
Draft discarded

Sign up or log in

Sign up using Google
Sign up using Email and Password

Post as a guest

Required, but never shown

Post as a guest

Required, but never shown

By clicking "Post Your Answer", you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.