Hi,
without modifying the code, the quickest approach you may consider is:
- rewriting your NetCDF to use a more common time unit as the one reported
in my previous email
- using NCML to update the time variable (this approach is less invasive
since you won't modify the original data, you will just place a .ncml file
beside your sample containing a few instructions to describe the updated
time dimension):
https://www.unidata.ucar.edu/software/thredds/v4.5/netcdf-java/ncml/Cookbook.html
.
(just overwriting the "units" attribute value and the time instant values
in the proper unit).
Supporting your sample as is, would require some code changes.
In that case, you can consider opening a JIRA containing the sample data
and details on the issue to report the problem.
You can contribute yourself the improvements through a github pull request
or just wait for a developer taking care of this issue.
Hope this helps.
Cheers,
Daniele
On Tue, Feb 2, 2016 at 4:11 PM, axxis l <[email protected]> wrote:
> Hi Daniele,
>
>
> the GeoServer Version is 2.8.1
>
> After a few tests, my conjection is also the time unit, even if you have a
> look to the logfile.
>
> Are there any hints how I can skirting it?
>
>
> Cheers
>
>
> -----------------------
> 2016-02-02 16:04:15,277 WARN [netcdf.NetCDFFormat] - Unable to connect
> org.geotools.data.DataSourceException: Unable to connect
> at
> org.geotools.coverage.io.netcdf.NetCDFReader.<init>(NetCDFReader.java:158)
> at
> org.geotools.coverage.io.netcdf.NetCDFFormat.getReader(NetCDFFormat.java:95)
> at
> org.geoserver.catalog.ResourcePool.getGridCoverageReader(ResourcePool.java:1441)
> at
> org.geoserver.catalog.ResourcePool.getGridCoverageReader(ResourcePool.java:1369)
> at
> org.geoserver.catalog.impl.CoverageStoreInfoImpl.getGridCoverageReader(CoverageStoreInfoImpl.java:59)
> 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:601)
> at
> org.geoserver.catalog.impl.ModificationProxy.invoke(ModificationProxy.java:146)
> at $Proxy9.getGridCoverageReader(Unknown Source)
> at
> org.geoserver.web.data.layer.NewLayerPageProvider.getItemsInternal(NewLayerPageProvider.java:90)
> at
> org.geoserver.web.data.layer.NewLayerPageProvider.getItems(NewLayerPageProvider.java:59)
> at
> org.geoserver.web.wicket.GeoServerDataProvider.fullSize(GeoServerDataProvider.java:242)
> at
> org.geoserver.web.wicket.GeoServerTablePanel$PagerDelegate.updateMatched(GeoServerTablePanel.java:566)
> at
> org.geoserver.web.wicket.GeoServerTablePanel$PagerDelegate.<init>(GeoServerTablePanel.java:559)
> at
> org.geoserver.web.wicket.GeoServerTablePanel.<init>(GeoServerTablePanel.java:171)
> at
> org.geoserver.web.wicket.GeoServerTablePanel.<init>(GeoServerTablePanel.java:96)
> at
> org.geoserver.web.data.layer.NewLayerPage$1.<init>(NewLayerPage.java:106)
> at
> org.geoserver.web.data.layer.NewLayerPage.<init>(NewLayerPage.java:106)
> at
> org.geoserver.web.data.store.CoverageStoreNewPage.onSuccessfulSave(CoverageStoreNewPage.java:79)
> at
> org.geoserver.web.data.store.CoverageStoreNewPage.onSave(CoverageStoreNewPage.java:70)
> at
> org.geoserver.web.data.store.AbstractCoverageStorePage$1.onSubmit(AbstractCoverageStorePage.java:116)
> 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:28)
> at
> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
> at
> org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:75)
> at
> org.geoserver.wms.animate.AnimatorFilter.doFilter(AnimatorFilter.java:71)
> at
> org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:71)
> at
> org.geoserver.filters.SpringDelegatingFilter.doFilter(SpringDelegatingFilter.java:46)
> at
> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
> at
> org.geoserver.platform.AdvancedDispatchFilter.doFilter(AdvancedDispatchFilter.java:50)
> 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:69)
> 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:73)
> at
> org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
> at
> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)
> at
> org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
> at
> org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:113)
> at
> org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
> at
> org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
> at
> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)
> at
> org.geoserver.security.filter.GeoServerAnonymousAuthenticationFilter.doFilter(GeoServerAnonymousAuthenticationFilter.java:54)
> at
> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)
> at
> org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
> at
> org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:182)
> at
> org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
> at
> org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
> at
> org.geoserver.security.filter.GeoServerUserNamePasswordAuthenticationFilter.doFilter(GeoServerUserNamePasswordAuthenticationFilter.java:116)
> at
> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)
> at
> org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
> at
> org.springframework.security.web.authentication.rememberme.RememberMeAuthenticationFilter.doFilter(RememberMeAuthenticationFilter.java:146)
> at
> org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
> at
> org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
> at
> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)
> at
> org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
> at
> org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87)
> at
> org.geoserver.security.filter.GeoServerSecurityContextPersistenceFilter$1.doFilter(GeoServerSecurityContextPersistenceFilter.java:53)
> at
> org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
> at
> org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
> at
> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)
> at
> org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:173)
> at
> org.geoserver.security.GeoServerSecurityFilterChainProxy.doFilter(GeoServerSecurityFilterChainProxy.java:135)
> 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:87)
> 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:48)
> at
> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
> at
> org.geoserver.filters.FlushSafeFilter.doFilter(FlushSafeFilter.java:44)
> at
> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
> at
> org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)
> at
> org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
> 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: org.geotools.data.DataSourceException:
> java.lang.IllegalArgumentException: Couldn't determine time units from unit
> string 'years'
> at
> org.geotools.coverage.io.netcdf.NetCDFAccess.<init>(NetCDFAccess.java:126)
> at
> org.geotools.coverage.io.netcdf.NetCDFDriver.connect(NetCDFDriver.java:92)
> at
> org.geotools.coverage.io.impl.DefaultFileDriver.process(DefaultFileDriver.java:216)
> at
> org.geotools.coverage.io.netcdf.NetCDFReader.<init>(NetCDFReader.java:156)
> ... 119 more
> Caused by: java.lang.RuntimeException: java.lang.IllegalArgumentException:
> Couldn't determine time units from unit string 'years'
> at
> org.geotools.imageio.netcdf.NetCDFImageReader.setInput(NetCDFImageReader.java:266)
> at javax.imageio.ImageReader.setInput(ImageReader.java:380)
> at
> org.geotools.coverage.io.netcdf.NetCDFAccess.<init>(NetCDFAccess.java:115)
> ... 122 more
> Caused by: java.lang.IllegalArgumentException: Couldn't determine time
> units from unit string 'years'
> at
> org.geotools.imageio.netcdf.cv.TimeCoordinateVariable$TimeBuilder.<init>(TimeCoordinateVariable.java:79)
> at
> org.geotools.imageio.netcdf.cv.TimeCoordinateVariable.<init>(TimeCoordinateVariable.java:137)
> at
> org.geotools.imageio.netcdf.cv.CoordinateVariable.create(CoordinateVariable.java:120)
> at
> org.geotools.imageio.netcdf.NetCDFGeoreferenceManager.extractCoordinatesVariable(NetCDFGeoreferenceManager.java:172)
> at
> org.geotools.imageio.netcdf.NetCDFGeoreferenceManager.<init>(NetCDFGeoreferenceManager.java:153)
> at
> org.geotools.imageio.netcdf.NetCDFImageReader.init(NetCDFImageReader.java:449)
> at
> org.geotools.imageio.netcdf.NetCDFImageReader.setInput(NetCDFImageReader.java:264)
> ... 124 more
> -------------------------------
>
>
>
> ------------------------------
> *Von:* [email protected] <[email protected]> im Auftrag von
> Daniele Romagnoli <[email protected]>
> *Gesendet:* Dienstag, 2. Februar 2016 14:46
> *An:* axxis l
> *Cc:* [email protected]
> *Betreff:* Re: [Geoserver-users] NetCDF Plugin
>
> Hi Lotta,
> do you have any chance to share the full log?
> Which version of GeoServer are you using? (2.8.x, X = ?)
>
> I have a doubt in relation to the time unit.
> I think that the current code only deals with "seconds/minutes/hours/days
> since the reference time".
> I'm not sure it will support the "years since date" type.
>
> Let's see if the log says something more to provide you more feedbacks.
> Hope this helps.
>
> Cheers,
> Daniele
>
>
> On Tue, Feb 2, 2016 at 1:44 PM, axxis l <[email protected]> wrote:
>
>> Hi List,
>>
>>
>> I´m using geoserver 2.8 with netcdf plugin. I am creating a store with
>> netcdf file and I get the following error:
>>
>>
>> "Could not list layers for this store, an error occurred retrieving them:
>> Failed to create reader from file://Z:\...\26012016.nc and hints null."
>>
>>
>> Is there a problem with the file?
>>
>> Attached you find a file extract
>> <https://dict.leo.org/ende/index_de.html#/search=extract&searchLoc=0&resultOrder=basic&multiwordShowSingle=on>from
>> the .cdl file.
>>
>>
>> ------------------------------
>>
>> netcdf 26012016 {
>> dimensions:
>> lon = 42 ;
>> lat = 35 ;
>> time = 7 ;
>> variables:
>> float lon(lon) ;
>> lon:standard_name = "longitude" ;
>> lon:long_name = "longitude" ;
>> lon:units = "degrees_east" ;
>> lon:axis = "X" ;
>> lon:_CoordinateAxisType = "Lon" ;
>> float lat(lat) ;
>> lat:standard_name = "latitude" ;
>> lat:long_name = "latitude" ;
>> lat:units = "degrees_north" ;
>> lat:axis = "Y" ;
>> lat:_CoordinateAxisType = "Lat" ;
>> float time(time) ;
>> time:standard_name = "time" ;
>> time:long_name = "Time" ;
>> time:units = "years since 2000-07-01" ;
>> time:calendar = "gregorian" ;
>> time:_CoordinateAxisType = "Time" ;
>> float SPEI02(time, lat, lon) ;
>> SPEI02:units = "z values" ;
>> SPEI02:long_name = "drought index" ;
>> SPEI02:missing_value = -999. ;
>> data:
>>
>> lon = -9.5, -8.5, ... ;
>>
>> lat = 36.5, 37.5, ... ;
>>
>> time = 0, 1, ... ;
>>
>> SPEI02 =
>> // SPEI02(0,1, 0-41)
>> NaNf, NaNf, -0.035, -0.09, -0.155, NaNf, NaNf, NaNf, NaNf, 0.064,
>> 0.204,
>> 0.319, 0.405, 0.449, 0.491, 1.292, 1.485, NaNf, NaNf, NaNf, 0.622,
>> 0.134,
>> 0.085, 0.415, NaNf, NaNf, 0.729, 0.885, 1.006, 0.966, 0.873, 0.678,
>> 0.133, 0.181, 0.19, 0.215, 0.21, NaNf, NaNf, NaNf, NaNf, NaNf,
>> // SPEI02(0,2, 0-41)
>> NaNf, NaNf, NaNf, NaNf, NaNf, NaNf, NaNf, NaNf, NaNf, 0.198, 0.295,
>> 0.303, 0.314, 0.354, 0.526, 1.363, 1.549, 1.553, 1.379, 1.101, 0.575,
>> 0.067, 0.004, NaNf, NaNf, 0.528, 0.704, 0.877, 1.07, 1.11, 0.793,
>> 0.48,
>> 0.444, 0.429, 0.511, 0.177, 0.6, NaNf, NaNf, NaNf, NaNf, NaNf,
>> .....
>>
>> ;
>> }
>>
>>
>> ----------------------
>>
>>
>> Thanks and Regards,
>>
>> Lotta
>>
>>
>>
>>
>>
>>
>>
>>
>> ------------------------------------------------------------------------------
>> Site24x7 APM Insight: Get Deep Visibility into Application Performance
>> APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
>> Monitor end-to-end web transactions and take corrective actions now
>> Troubleshoot faster and improve end-user experience. Signup Now!
>> http://pubads.g.doubleclick.net/gampad/clk?id=267308311&iu=/4140
>> _______________________________________________
>> Geoserver-users mailing list
>> [email protected]
>> https://lists.sourceforge.net/lists/listinfo/geoserver-users
>>
>>
>
>
> --
> ==
> 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
>
> http://www.geo-solutions.it
> http://twitter.com/geosolutions_it
>
> -------------------------------------------------------
>
> *AVVERTENZE AI SENSI DEL D.Lgs. 196/2003*
>
> Le informazioni contenute in questo messaggio di posta elettronica e/o
> nel/i file/s allegato/i sono da considerarsi strettamente riservate. Il
> loro utilizzo è consentito esclusivamente al destinatario del messaggio,
> per le finalità indicate nel messaggio stesso. Qualora riceviate questo
> messaggio senza esserne il destinatario, Vi preghiamo cortesemente di
> darcene notizia via e-mail e di procedere alla distruzione del messaggio
> stesso, cancellandolo dal Vostro sistema. Conservare il messaggio stesso,
> divulgarlo anche in parte, distribuirlo ad altri soggetti, copiarlo, od
> utilizzarlo per finalità diverse, costituisce comportamento contrario ai
> principi dettati dal D.Lgs. 196/2003.
>
>
>
> The information in this message and/or attachments, is intended solely for
> the attention and use of the named addressee(s) and may be confidential or
> proprietary in nature or covered by the provisions of privacy act
> (Legislative Decree June, 30 2003, no.196 - Italy's New Data Protection
> Code).Any use not in accord with its purpose, any disclosure, reproduction,
> copying, distribution, or either dissemination, either whole or partial, is
> strictly forbidden except previous formal approval of the named
> addressee(s). If you are not the intended recipient, please contact
> immediately the sender by telephone, fax or e-mail and delete the
> information in this message that has been received in error. The sender
> does not give any warranty or accept liability as the content, accuracy or
> completeness of sent messages and accepts no responsibility for changes
> made after they were sent or for other risks which arise as a result of
> e-mail transmission, viruses, etc.
>
>
>
> ------------------------------------------------------------------------------
> Site24x7 APM Insight: Get Deep Visibility into Application Performance
> APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
> Monitor end-to-end web transactions and take corrective actions now
> Troubleshoot faster and improve end-user experience. Signup Now!
> http://pubads.g.doubleclick.net/gampad/clk?id=267308311&iu=/4140
> _______________________________________________
> Geoserver-users mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/geoserver-users
>
>
--
==
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
http://www.geo-solutions.it
http://twitter.com/geosolutions_it
-------------------------------------------------------
*AVVERTENZE AI SENSI DEL D.Lgs. 196/2003*
Le informazioni contenute in questo messaggio di posta elettronica e/o
nel/i file/s allegato/i sono da considerarsi strettamente riservate. Il
loro utilizzo è consentito esclusivamente al destinatario del messaggio,
per le finalità indicate nel messaggio stesso. Qualora riceviate questo
messaggio senza esserne il destinatario, Vi preghiamo cortesemente di
darcene notizia via e-mail e di procedere alla distruzione del messaggio
stesso, cancellandolo dal Vostro sistema. Conservare il messaggio stesso,
divulgarlo anche in parte, distribuirlo ad altri soggetti, copiarlo, od
utilizzarlo per finalità diverse, costituisce comportamento contrario ai
principi dettati dal D.Lgs. 196/2003.
The information in this message and/or attachments, is intended solely for
the attention and use of the named addressee(s) and may be confidential or
proprietary in nature or covered by the provisions of privacy act
(Legislative Decree June, 30 2003, no.196 - Italy's New Data Protection
Code).Any use not in accord with its purpose, any disclosure, reproduction,
copying, distribution, or either dissemination, either whole or partial, is
strictly forbidden except previous formal approval of the named
addressee(s). If you are not the intended recipient, please contact
immediately the sender by telephone, fax or e-mail and delete the
information in this message that has been received in error. The sender
does not give any warranty or accept liability as the content, accuracy or
completeness of sent messages and accepts no responsibility for changes
made after they were sent or for other risks which arise as a result of
e-mail transmission, viruses, etc.
------------------------------------------------------------------------------
Site24x7 APM Insight: Get Deep Visibility into Application Performance
APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
Monitor end-to-end web transactions and take corrective actions now
Troubleshoot faster and improve end-user experience. Signup Now!
http://pubads.g.doubleclick.net/gampad/clk?id=267308311&iu=/4140
_______________________________________________
Geoserver-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/geoserver-users