Thanks Simone! I will try it when 2.5.3 becomes available. --Steve
From: [email protected] [mailto:[email protected]] On Behalf Of Simone Giannecchini Sent: Tuesday, August 12, 2014 10:20 AM To: Stephen Brooke Cc: Simone Giannecchini; [email protected] Subject: Re: [Geoserver-users] Get error trying to use ImageMosaic plugin for raster time-series data Ciao Stephen, I just tested this with a nightly build from 2.5.x and I was able to cuse an existing DB with other tables. To confirm you should find in the autogenerated properties files a KVP like this: TypeName=waterTempPG which tells the ImageMosaic which table he should use. Long story short this will be in 2.5.3 for sure, you might want to try a recent nightly to double check it works for you. Regards, Simone Giannecchini == GeoServer Professional Services from the experts! Visit http://goo.gl/NWWaa2 for more information. == Ing. Simone Giannecchini @simogeo Founder/Director GeoSolutions S.A.S. Via Poggio alle Viti 1187 55054 Massarosa (LU) Italy phone: +39 0584 962313 fax: +39 0584 1660272 mob: +39 333 8128928 http://www.geo-solutions.it http://twitter.com/geosolutions_it ------------------------------------------------------- On Mon, Aug 11, 2014 at 8:26 PM, Stephen Brooke <[email protected]<mailto:[email protected]>> wrote: Hi Simone, That would be very much appreciated because I don’t want to have to create a new database for each time series mosaic as there will likely be too many of them for it to be practical. If you could make this happen that would be great! Thanks for your response, --Steve From: [email protected]<mailto:[email protected]> [mailto:[email protected]<mailto:[email protected]>] On Behalf Of Simone Giannecchini Sent: Monday, August 11, 2014 11:20 AM To: Stephen Brooke Cc: [email protected]<mailto:[email protected]> Subject: Re: [Geoserver-users] Get error trying to use ImageMosaic plugin for raster time-series data Ciao Stephen, this limitation should be gone on the soon-to-be 2.6. I'll check tomorrow if this can be backported to 2.5.x. Regards, Simone Giannecchini == GeoServer Professional Services from the experts! Visit http://goo.gl/NWWaa2 for more information. == Ing. Simone Giannecchini @simogeo Founder/Director GeoSolutions S.A.S. Via Poggio alle Viti 1187 55054 Massarosa (LU) Italy phone: +39 0584 962313<tel:%2B39%200584%20962313> fax: +39 0584 1660272<tel:%2B39%200584%201660272> mob: +39 333 8128928<tel:%2B39%20%C2%A0333%208128928> http://www.geo-solutions.it http://twitter.com/geosolutions_it ------------------------------------------------------- On Mon, Aug 11, 2014 at 6:21 PM, Stephen Brooke <[email protected]<mailto:[email protected]>> wrote: After a serious debug session with Geoserver and GeoTools source code I discovered that the GeoTools org.geotools.gce.imagemosaic.catalog.GTDataStoreGranuleCatalog class was being passed unexpected “typeNames” to its “extractBasicProperties” method (i.e. database tables in my Postgresql db) thinking they had feature info in them. After looking back at the ImageMosaic tutorial I noticed that it clearly states: “The configuration needed are the basics: create a new empty DB with geospatial extensions, a new schema and configure the user with W/R grants.” My database had other unrelated tables in it and after I created a new database meeting the above requirement the ImageMosaic with time and elevation dimensions was created successfully and layer published. I still find this empty DB requirement to be a bit odd but at least it is working for me now. --Steve From: Stephen Brooke Sent: Wednesday, August 06, 2014 10:26 AM To: [email protected]<mailto:[email protected]> Subject: RE: Get error trying to use ImageMosaic plugin for raster time-series data Does anyone have any insight into this? I find it hard to believe that I’m the first to discover that the “Using the ImageMosaic plugin for raster time-series data” tutorial from the GeoServer documentation doesn’t work with GeoServer 2.5.1 as written. --Steve From: Stephen Brooke Sent: Wednesday, July 30, 2014 11:39 AM To: [email protected]<mailto:[email protected]> Subject: RE: Get error trying to use ImageMosaic plugin for raster time-series data Tracing into the GeoServer source code it appears the error is coming out of the below lines in the org.geoserver.catalog. ResourcePool class but I don’t understand why: ResourcePool.java: … private GridCoverageReader getGridCoverageReader(CoverageStoreInfo info, CoverageInfo coverageInfo, String coverageName, Hints hints) throws IOException { … // readers might change the provided hints, pass down a defensive copy reader = gridFormat.getReader(input, new Hints(hints)); if(reader == null) { throw new IOException("Failed to create reader from " + url + " and hints " + hints); } … } … --Steve From: Stephen Brooke Sent: Wednesday, July 30, 2014 11:20 AM To: [email protected]<mailto:[email protected]> Subject: Get error trying to use ImageMosaic plugin for raster time-series data I’m using GeoServer 2.5.1 and PostGIS 2.1.3 I’m trying to run through the tutorial in GeoServer docs “Using the ImageMosaic plugin for raster time-series data” and I don’t think I’ve deviated at all from the steps from (http://docs.geoserver.org/latest/en/user/tutorials/imagemosaic_timeseries/imagemosaic_timeseries.html#id3) except to call my “TimeAttribute” “ingest_time” instead of “ingestion”, and I get the below stacktrace in the GeoServer log and my Coverage Store fails to be created. I’m using the DBMS approach for storing the dimension attributes and spatial index and I see that a new table called “snow” is added to my database, however the ImageMosaic is not created. Is there some step missing in this tutorial? I’m having a difficult time understanding what problem the operation is having with my configuration as the message in the stacktrace is a bit too generic: >>>> Caused by: java.io.IOException: Failed to create reader from file://D:\Data\gis\hydroalp\snow<file:///D:\Data\gis\hydroalp\snow> and hints null <<<< The “snow” table has the following contents: 1;"0103000020787F000001000000050000000000000040112341000000004BBA5341000000004011234100000000FDC6534100000000304E234100000000FDC6534100000000304E2341000000004BBA53410000000040112341000000004BBA5341";"snow_20091001.tif";"2009-10-01 00:00:00"; 2;"0103000020787F000001000000050000000000000040112341000000004BBA5341000000004011234100000000FDC6534100000000304E234100000000FDC6534100000000304E2341000000004BBA53410000000040112341000000004BBA5341";"snow_20091101.tif";"2009-11-01 00:00:00"; 3;"0103000020787F000001000000050000000000000040112341000000004BBA5341000000004011234100000000FDC6534100000000304E234100000000FDC6534100000000304E2341000000004BBA53410000000040112341000000004BBA5341";"snow_20091201.tif";"2009-12-01 00:00:00"; --Steve 30 Jul 18:08:21 INFO [geoserver.web] - Getting list of coverages for saved store file://D:\Data\gis\hydroalp\snow<file:///D:\Data\gis\hydroalp\snow> java.lang.RuntimeException: Could not list layers for this store, an error occurred retrieving them: Failed to create reader from file://D:\Data\gis\hydroalp\snow<file:///D:\Data\gis\hydroalp\snow> and hints null at org.geoserver.web.data.layer.NewLayerPageProvider.getItemsInternal(NewLayerPageProvider.java:150) at org.geoserver.web.data.layer.NewLayerPageProvider.getItems(NewLayerPageProvider.java:58) at org.geoserver.web.wicket.GeoServerDataProvider.fullSize(GeoServerDataProvider.java:236) at org.geoserver.web.wicket.GeoServerTablePanel$PagerDelegate.updateMatched(GeoServerTablePanel.java:562) at org.geoserver.web.wicket.GeoServerTablePanel$PagerDelegate.<init>(GeoServerTablePanel.java:555) at org.geoserver.web.wicket.GeoServerTablePanel.<init>(GeoServerTablePanel.java:219) at org.geoserver.web.wicket.GeoServerTablePanel.<init>(GeoServerTablePanel.java:98) at org.geoserver.web.data.layer.NewLayerPage$1.<init>(NewLayerPage.java:101) at org.geoserver.web.data.layer.NewLayerPage.<init>(NewLayerPage.java:101) at org.geoserver.web.data.store.CoverageStoreNewPage.onSuccessfulSave(CoverageStoreNewPage.java:76) at org.geoserver.web.data.store.CoverageStoreNewPage.onSave(CoverageStoreNewPage.java:67) at org.geoserver.web.data.store.AbstractCoverageStorePage$1.onSubmit(AbstractCoverageStorePage.java:115) at org.apache.wicket.ajax.markup.html.form.AjaxSubmitLink$1.onSubmit(AjaxSubmitLink.java:68) at org.apache.wicket.ajax.form.AjaxFormSubmitBehavior.onEvent(AjaxFormSubmitBehavior.java:143) at org.apache.wicket.ajax.AjaxEventBehavior.respond(AjaxEventBehavior.java:177) at org.apache.wicket.ajax.AbstractDefaultAjaxBehavior.onRequest(AbstractDefaultAjaxBehavior.java:300) at org.apache.wicket.request.target.component.listener.BehaviorRequestTarget.processEvents(BehaviorRequestTarget.java:119) at org.apache.wicket.request.AbstractRequestCycleProcessor.processEvents(AbstractRequestCycleProcessor.java:92) at org.apache.wicket.RequestCycle.processEventsAndRespond(RequestCycle.java:1250) at org.apache.wicket.RequestCycle.step(RequestCycle.java:1329) at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1436) at org.apache.wicket.RequestCycle.request(RequestCycle.java:545) at org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:484) at org.apache.wicket.protocol.http.WicketServlet.doPost(WicketServlet.java:160) at javax.servlet.http.HttpServlet.service(HttpServlet.java:727) at javax.servlet.http.HttpServlet.service(HttpServlet.java:820) at org.springframework.web.servlet.mvc.ServletWrappingController.handleRequestInternal(ServletWrappingController.java:159) at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:153) at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:48) at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:923) at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:852) at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:882) at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:789) at javax.servlet.http.HttpServlet.service(HttpServlet.java:727) at javax.servlet.http.HttpServlet.service(HttpServlet.java:820) at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1093) at org.geoserver.filters.ThreadLocalsCleanupFilter.doFilter(ThreadLocalsCleanupFilter.java:27) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084) at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:74) at org.geoserver.wms.animate.AnimatorFilter.doFilter(AnimatorFilter.java:70) at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:70) at org.geoserver.filters.SpringDelegatingFilter.doFilter(SpringDelegatingFilter.java:45) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084) at org.geoserver.platform.AdvancedDispatchFilter.doFilter(AdvancedDispatchFilter.java:49) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:311) at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:68) at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:116) at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83) at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:72) at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:68) at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:113) at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:72) at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) at org.geoserver.security.filter.GeoServerAnonymousAuthenticationFilter.doFilter(GeoServerAnonymousAuthenticationFilter.java:53) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:68) at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:182) at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:72) at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91) at org.geoserver.security.filter.GeoServerUserNamePasswordAuthenticationFilter.doFilter(GeoServerUserNamePasswordAuthenticationFilter.java:115) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:68) at org.springframework.security.web.authentication.rememberme.RememberMeAuthenticationFilter.doFilter(RememberMeAuthenticationFilter.java:146) at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:72) at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:68) at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87) at org.geoserver.security.filter.GeoServerSecurityContextPersistenceFilter$1.doFilter(GeoServerSecurityContextPersistenceFilter.java:52) at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:72) at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:173) at org.geoserver.security.GeoServerSecurityFilterChainProxy.doFilter(GeoServerSecurityFilterChainProxy.java:134) at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346) at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:259) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084) at org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:75) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084) at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:42) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084) at org.geoserver.filters.SessionDebugFilter.doFilter(SessionDebugFilter.java:47) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084) at org.geoserver.filters.FlushSafeFilter.doFilter(FlushSafeFilter.java:43) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084) at gs.gc.SimpleAuthorizationFilter.doFilter(SimpleAuthorizationFilter.java:35) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084) at com.thetransactioncompany.cors.CORSFilter.doFilter(CORSFilter.java:168) at com.thetransactioncompany.cors.CORSFilter.doFilter(CORSFilter.java:233) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084) at org.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:109) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084) at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360) at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216) at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181) at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:726) at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405) at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:206) at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114) at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) at org.mortbay.jetty.Server.handle(Server.java:324) at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505) at org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:842) at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:648) at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211) at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380) at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:395) at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:450) Caused by: java.io.IOException: Failed to create reader from file://D:\Data\gis\hydroalp\snow<file:///D:\Data\gis\hydroalp\snow> and hints null at org.geoserver.catalog.ResourcePool.getGridCoverageReader(ResourcePool.java:1296) at org.geoserver.catalog.impl.CoverageStoreInfoImpl.getGridCoverageReader(CoverageStoreInfoImpl.java:58) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at org.geoserver.catalog.impl.ModificationProxy.invoke(ModificationProxy.java:145) at com.sun.proxy.$Proxy8.getGridCoverageReader(Unknown Source) at org.geoserver.web.data.layer.NewLayerPageProvider.getItemsInternal(NewLayerPageProvider.java:89) ... 112 more Stephen Brooke (a.k.a. Steve) Software Engineer III Ground Systems MDA http://www.mda.ca<http://www.mda.ca/> [email protected]<mailto:[email protected]> Direct phone +1 604 231 2429<tel:%2B1%20604%20231%202429> Cell phone +1 778 839 3274<tel:%2B1%20778%20839%203274> Switchboard +1 604 278 3411<tel:%2B1%20604%20278%203411> FAX +1 604 231 2757<tel:%2B1%20604%C2%A0231%202757> ------------------------------------------------------------------ This e-mail and any attachments are intended solely for the use of the intended recipient(s) and may contain legally privileged, proprietary and/or confidential information. Any use, disclosure, dissemination, distribution or copying of this e-mail and any attachments for any purposes that have not been specifically authorized by the sender is strictly prohibited. If you are not the intended recipient, please immediately notify the sender by reply e-mail and permanently delete all copies and attachments. The entire content of this e-mail is for "information purposes" only and should not be relied upon by the recipient in any way unless otherwise confirmed in writing by way of letter or facsimile. ------------------------------------------------------------------------------ _______________________________________________ Geoserver-users mailing list [email protected]<mailto:[email protected]> https://lists.sourceforge.net/lists/listinfo/geoserver-users
------------------------------------------------------------------------------
_______________________________________________ Geoserver-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/geoserver-users
