Suite

Classes manquantes de sortie netCDF du géoserveur


J'ai téléchargé la dernière version stable (2.7.1.1) à partir de http://sourceforge.net/projects/geoserver/files/GeoServer/. Cela commence par la jetée intégrée et fonctionne bien jusqu'à présent.

Je voulais donc configurer la sortie netCDF pour les couches WCS et télécharger les plugins netCDF à partir d'ici : http://ares.opengeo.org/geoserver/2.7.x/community-latest/

Cependant, le démarrage du serveur après leur installation sur geoserver/libs entraîne :

java.util.ServiceConfigurationError : javax.imageio.spi.ImageReaderSpi : Le fournisseur org.geotools.imageio.netcdf.NetCDFImageReaderSpi n'a pas pu être instancié sur java.util.ServiceLoader.fail(ServiceLoader.java:232) sur java.util.ServiceLoader. access$100(ServiceLoader.java:185) à java.util.ServiceLoader$LazyIterator.nextService(ServiceLoader.java:384) à java.util.ServiceLoader$LazyIterator.next(ServiceLoader.java:404) à java.util.ServiceLoader$1 .next(ServiceLoader.java:480) sur javax.imageio.spi.IIORegistry.registerApplicationClasspathSpis(IIORegistry.java:210) sur javax.imageio.spi.IIORegistry.(IIORegistry.java:138) sur javax.imageio.spi.IIORegistry.getDefaultInstance(IIORegistry.java:159) sur javax.imageio.ImageIO.(ImageIO.java:66) sur org.geoserver.GeoserverInitStartupListener.contextInitialized(GeoserverInitStartupListener.java:159) sur org.mortbay.jetty.handler.ContextHandler.startContext(ContextHandler.java:540) sur org.mortbay.jetty.servlet Context.startContext(Context.java:135) sur org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1220) sur org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:510) sur org .mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:448) à org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39) à org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java :152) sur org.mortbay.jetty.handler.ContextHandlerCollection.doStart(ContextHandlerCollection.java:156) sur org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39) sur org.mortbay.jetty.handler.HandlerCollection. doStart(HandlerCollection.java:152) sur org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39) sur org .mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130) à org.mortbay.jetty.Server.doStart(Server.java:222) à org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39 ) sur org.mortbay.xml.XmlConfiguration.main(XmlConfiguration.java:977) sur sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) sur sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) sur sun.reflect. DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) sur java.lang.reflect.Method.invoke(Method.java:497) sur org.mortbay.start.Main.invokeMain(Main.java:183) sur org.mortbay.start .Main.start(Main.java:497) à org.mortbay.start.Main.main(Main.java:115) Causé par : java.lang.NoClassDefFoundError : org/geotools/coverage/grid/io/FileSetManager à java .lang.ClassLoader.defineClass1(Native Method) sur java.lang.ClassLoader.defineClass(ClassLoader.java:760) sur java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) sur java.net.URLClassLoader. defineClass(URLClassLoader.java:467) sur java.net.URLClassLoader.access$100(URLClassLoader.java:73) sur java.net.URLClassLoader$1.run(URLClassLoader.java:368) sur java.net.URLClassLoader$1.run( URLClassLoader.java:362) sur java.security.AccessController.doPrivileged(Native Method) sur java.net.URLClassLoader.findClass(URLClassLoader.java:361) sur java.lang.ClassLoader.loadClass(ClassLoader.java:424) sur java .lang.ClassLoader.loadClass(ClassLoader.java:357) à java.lang.Class.getDeclaredConstructors0(Native Method) à java.lang.Class.privateGetDeclaredConstructors(Class.java:2671) à java.lang.Class.getConstructor0(Class .java:3075) à java.lang.Class.newInstance(Class.java:412) à java.util.ServiceLoader$LazyIterator.nextService(ServiceLoader.java:380)… 29 de plus Causé par: java.lang.ClassNotFoundException: org .geotools.coverage.grid.io.FileSetManager sur java.net.URLClassLoader.findClass(URLClassLoader.java:381) sur java.lang.ClassLoader.loadClass(ClassLoader.java:424) sur java.lang.ClassLoader.loa dClass(ClassLoader.java:357)… 45 more 2015-07-20 17:44:55.798::WARN: échec [email protected] java.util.ServiceConfigurationError: javax.imageio.spi.ImageReaderSpi: Provider org.geotools.imageio. netcdf.NetCDFImageReaderSpi n'a pas pu être instancié à java.util.ServiceLoader.fail(ServiceLoader.java:232) à java.util.ServiceLoader.access$100(ServiceLoader.java:185) à java.util.ServiceLoader$LazyIterator.nextService(ServiceLoader .java:384) à java.util.ServiceLoader$LazyIterator.next(ServiceLoader.java:404) à java.util.ServiceLoader$1.next(ServiceLoader.java:480) à javax.imageio.spi.IIORegistry.registerApplicationClasspathSpis(IIORegistry .java:210) sur javax.imageio.spi.IIORegistry.(IIORegistry.java:138) sur javax.imageio.spi.IIORegistry.getDefaultInstance(IIORegistry.java:159) sur javax.imageio.ImageIO.(ImageIO.java:66) sur org.geoserver.GeoserverInitStartupListener.contextInitialized(GeoserverInitStartupListener.java:159) sur org.mortbay.jetty.handler.ContextHandler.startContext(ContextHandler.java:540) sur org.mortbay.jetty.servlet Context.startContext(Context.java:135) sur org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1220) sur org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:510) sur org .mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:448) à org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39) à org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java :152) sur org.mortbay.jetty.handler.ContextHandlerCollection.doStart(ContextHandlerCollection.java:156) sur org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39) sur org.mortbay.jetty.handler.HandlerCollection. doStart(HandlerCollection.java:152) sur org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39) sur org .mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130) à org.mortbay.jetty.Server.doStart(Server.java:222) à org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39 ) sur org.mortbay.xml.XmlConfiguration.main(XmlConfiguration.java:977) sur sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) sur sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) sur sun.reflect. DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) sur java.lang.reflect.Method.invoke(Method.java:497) sur org.mortbay.start.Main.invokeMain(Main.java:183) sur org.mortbay.start .Main.start(Main.java:497) à org.mortbay.start.Main.main(Main.java:115) Causé par : java.lang.NoClassDefFoundError : org/geotools/coverage/grid/io/FileSetManager à java .lang.ClassLoader.defineClass1(Native Method) sur java.lang.ClassLoader.defineClass(ClassLoader.java:760) sur java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) sur java.net.URLClassLoader. defineClass(URLClassLoader.java:467) sur java.net.URLClassLoader.access$100(URLClassLoader.java:73) sur java.net.URLClassLoader$1.run(URLClassLoader.java:368) sur java.net.URLClassLoader$1.run( URLClassLoader.java:362) sur java.security.AccessController.doPrivileged(Native Method) sur java.net.URLClassLoader.findClass(URLClassLoader.java:361) sur java.lang.ClassLoader.loadClass(ClassLoader.java:424) sur java .lang.ClassLoader.loadClass(ClassLoader.java:357) à java.lang.Class.getDeclaredConstructors0(Native Method) à java.lang.Class.privateGetDeclaredConstructors(Class.java:2671) à java.lang.Class.getConstructor0(Class .java:3075) à java.lang.Class.newInstance(Class.java:412) à java.util.ServiceLoader$LazyIterator.nextService(ServiceLoader.java:380)… 29 de plus Causé par: java.lang.ClassNotFoundException: org .geotools.coverage.grid.io.FileSetManager sur java.net.URLClassLoader.findClass(URLClassLoader.java:381) sur java.lang.ClassLoader.loadClass(ClassLoader.java:424) sur java.lang.ClassLoader.loa dClass(ClassLoader.java:357)… 45 more 2015-07-20 17:44:55.802::INFO: Ouvert /usr/share/geoserver/logs/2015_07_20.request.log 2015-07-20 17:44:55.802 :: WARN : échec de [email protected] java.util.ServiceConfigurationError : javax.imageio.spi.ImageReaderSpi : le fournisseur org.geotools.imageio.netcdf.NetCDFImageReaderSpi n'a pas pu être instancié sur java.util.ServiceLoader.fail(ServiceLoader.232 ) à java.util.ServiceLoader.access$100(ServiceLoader.java:185) à java.util.ServiceLoader$LazyIterator.nextService(ServiceLoader.java:384) à java.util.ServiceLoader$LazyIterator.next(ServiceLoader.java:404 ) sur java.util.ServiceLoader$1.next(ServiceLoader.java:480) sur javax.imageio.spi.IIORegistry.registerApplicationClasspathSpis(IIORegistry.java:210) sur javax.imageio.spi.IIORegistry.(IIORegistry.java:138) sur javax.imageio.spi.IIORegistry.getDefaultInstance(IIORegistry.java:159) sur javax.imageio.ImageIO.(ImageIO.java:66) sur org.geoserver.GeoserverInitStartupListener.contextInitialized(GeoserverInitStartupListener.java:159) sur org.mortbay.jetty.handler.ContextHandler.startContext(ContextHandler.java:540) sur org.mortbay.jetty.servlet Context.startContext(Context.java:135) sur org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1220) sur org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:510) sur org .mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:448) à org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39) à org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java :152) sur org.mortbay.jetty.handler.ContextHandlerCollection.doStart(ContextHandlerCollection.java:156) sur org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39) sur org.mortbay.jetty.handler.HandlerCollection. doStart(HandlerCollection.java:152) sur org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39) sur org .mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130) à org.mortbay.jetty.Server.doStart(Server.java:222) à org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39 ) sur org.mortbay.xml.XmlConfiguration.main(XmlConfiguration.java:977) sur sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) sur sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) sur sun.reflect. DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) sur java.lang.reflect.Method.invoke(Method.java:497) sur org.mortbay.start.Main.invokeMain(Main.java:183) sur org.mortbay.start .Main.start(Main.java:497) à org.mortbay.start.Main.main(Main.java:115) Causé par : java.lang.NoClassDefFoundError : org/geotools/coverage/grid/io/FileSetManager à java .lang.ClassLoader.defineClass1(Native Method) sur java.lang.ClassLoader.defineClass(ClassLoader.java:760) sur java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) sur java.net.URLClassLoader. defineClass(URLClassLoader.java:467) sur java.net.URLClassLoader.access$100(URLClassLoader.java:73) sur java.net.URLClassLoader$1.run(URLClassLoader.java:368) sur java.net.URLClassLoader$1.run( URLClassLoader.java:362) sur java.security.AccessController.doPrivileged(Native Method) sur java.net.URLClassLoader.findClass(URLClassLoader.java:361) sur java.lang.ClassLoader.loadClass(ClassLoader.java:424) sur java .lang.ClassLoader.loadClass(ClassLoader.java:357) à java.lang.Class.getDeclaredConstructors0(Native Method) à java.lang.Class.privateGetDeclaredConstructors(Class.java:2671) à java.lang.Class.getConstructor0(Class .java:3075) à java.lang.Class.newInstance(Class.java:412) à java.util.ServiceLoader$LazyIterator.nextService(ServiceLoader.java:380)… 29 de plus Causé par : java.lang.ClassNotFoundException: org .geotools.coverage.grid.io.FileSetManager sur java.net.URLClassLoader.findClass(URLClassLoader.java:381) sur java.lang.ClassLoader.loadClass(ClassLoader.java:424) sur java.lang.ClassLoader.loa dClass(ClassLoader.java:357)… 45 more 2015-07-20 17:44:55.803::WARN: Erreur lors du démarrage des gestionnaires java.util.ServiceConfigurationError: javax.imageio.spi.ImageReaderSpi: Provider org.geotools.imageio.netcdf .NetCDFImageReaderSpi n'a pas pu être instancié sur java.util.ServiceLoader.fail(ServiceLoader.java:232) sur java.util.ServiceLoader.access$100(ServiceLoader.java:185) sur java.util.ServiceLoader$LazyIterator.nextService(ServiceLoader. java:384) à java.util.ServiceLoader$LazyIterator.next(ServiceLoader.java:404) à java.util.ServiceLoader$1.next(ServiceLoader.java:480) à javax.imageio.spi.IIORegistry.registerApplicationClasspathSpis(IIORegistry. java:210) sur javax.imageio.spi.IIORegistry.(IIORegistry.java:138) sur javax.imageio.spi.IIORegistry.getDefaultInstance(IIORegistry.java:159) sur javax.imageio.ImageIO.(ImageIO.java:66) sur org.geoserver.GeoserverInitStartupListener.contextInitialized(GeoserverInitStartupListener.java:159) sur org.mortbay.jetty.handler.ContextHandler.startContext(ContextHandler.java:540) sur org.mortbay.jetty.servlet Context.startContext(Context.java:135) sur org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1220) sur org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:510) sur org .mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:448) à org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39) à org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java :152) sur org.mortbay.jetty.handler.ContextHandlerCollection.doStart(ContextHandlerCollection.java:156) sur org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39) sur org.mortbay.jetty.handler.HandlerCollection. doStart(HandlerCollection.java:152) sur org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39) sur org .mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130) à org.mortbay.jetty.Server.doStart(Server.java:222) à org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39 ) à org.mortbay.xml.XmlConfiguration.main(XmlConfiguration.java:977) à sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) à sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) à sun.reflect. DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) sur java.lang.reflect.Method.invoke(Method.java:497) sur org.mortbay.start.Main.invokeMain(Main.java:183) sur org.mortbay.start .Main.start(Main.java:497) à org.mortbay.start.Main.main(Main.java:115) Causé par : java.lang.NoClassDefFoundError : org/geotools/coverage/grid/io/FileSetManager à java .lang.ClassLoader.defineClass1(Native Method) sur java.lang.ClassLoader.defineClass(ClassLoader.java:760) sur java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) sur java.net.URLClassLoader. defineClass(URLClassLoader.java:467) sur java.net.URLClassLoader.access$100(URLClassLoader.java:73) sur java.net.URLClassLoader$1.run(URLClassLoader.java:368) sur java.net.URLClassLoader$1.run( URLClassLoader.java:362) sur java.security.AccessController.doPrivileged(Native Method) sur java.net.URLClassLoader.findClass(URLClassLoader.java:361) sur java.lang.ClassLoader.loadClass(ClassLoader.java:424) sur java .lang.ClassLoader.loadClass(ClassLoader.java:357) à java.lang.Class.getDeclaredConstructors0(Native Method) à java.lang.Class.privateGetDeclaredConstructors(Class.java:2671) à java.lang.Class.getConstructor0(Class .java:3075) à java.lang.Class.newInstance(Class.java:412) à java.util.ServiceLoader$LazyIterator.nextService(ServiceLoader.java:380)… 29 de plus Causé par: java.lang.ClassNotFoundException: org .geotools.coverage.grid.io.FileSetManager sur java.net.URLClassLoader.findClass(URLClassLoader.java:381) sur java.lang.ClassLoader.loadClass(ClassLoader.java:424) sur java.lang.ClassLoader.loa dClass(ClassLoader.java:357)… 45 de plus


Le problème n'existe en fait que dans la version installable autonome de geoserver. Déployer la guerre sur Tomcat et installer les bibliothèques ne pose aucun problème.


Autant que je sache, le problème se produirait si le plug-in de sortie netcdf était installé sans installer également le plug-in netcdf (celui d'entrée). L'installation du plugin d'entrée devrait résoudre le problème.

Vous voudrez peut-être ouvrir un ticket à ce sujet sur https://osgeo-org.atlassian.net/projects/GEOS/summary