[Geoserver-devel] Oops/help

I’ve been pottering around with Geotools (ie the full Maven build) trying to have a look at some elements that will potentially come in handy in the future and I seem to have caused Geoserver to crumble.

I have completely blown away and rebuilt Tomcat and Geoserver, and rebuilt the WAR file and placed it in the webapps directory for Tomcat. But the problem I’m having still remains.

The problem is that Geoserver doesn’t even begin to configure when I startup Tomcat. I checked the logs in Tomcat and the cause of the problem appears to be this:

java.lang.NoClassDefFoundError: org/geotools/data/DataStoreFactorySpi (full stack below)

which is suspiciously where I was testing something out with Geotools, but I thought this would be fixed when I rebuilt Geoserver (I completely blew away the Geoserver directory and existing WAR files and used a more recent download version of the code).

Any help/suggestions would be greaty appreciated.

Thanks,
Stuart

javax.servlet.ServletException: Servlet.init() for servlet FreefsLog threw exception
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:963)
at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:823)
at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:3420)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:3608)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:821)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:807)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:579)
at org.apache.catalina.core.StandardHostDeployer.install(StandardHostDeployer.java:307)
at org.apache.catalina.core.StandardHost.install(StandardHost.java:772)
at org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:492)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:400)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:718)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:358)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:166)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1196)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:738)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1188)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:347)
at org.apache.catalina.core.StandardService.start(StandardService.java:497)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:2190)
at org.apache.catalina.startup.Catalina.start(Catalina.java:512)
at org.apache.catalina.startup.Catalina.execute(Catalina.java:400)
at org.apache.catalina.startup.Catalina.process(Catalina.java:180)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:203)
----- Root Cause -----
java.lang.NoClassDefFoundError: org/geotools/data/DataStoreFactorySpi
at java.lang.ClassLoader.defineClass0(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:537)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:123)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:251)
at java.net.URLClassLoader.access$100(URLClassLoader.java:55)
at java.net.URLClassLoader$1.run(URLClassLoader.java:194)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:187)
at java.lang.ClassLoader.loadClass(ClassLoader.java:289)
at java.lang.ClassLoader.loadClass(ClassLoader.java:282)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:274)
at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1355)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1289)
at org.geotools.factory.FactoryFinder.newInstance(FactoryFinder.java:87)
at org.geotools.factory.FactoryFinder.getFactory(FactoryFinder.java:156)
at org.geotools.factory.FactoryFinder.getFactory(FactoryFinder.java:139)
at org.geotools.factory.FactoryFinder.access$000(FactoryFinder.java:59)
at org.geotools.factory.FactoryFinder$1.next(FactoryFinder.java:299)
at org.vfny.geoserver.config.ServerConfig.(ServerConfig.java:85)
at org.vfny.geoserver.config.ServerConfig.load(ServerConfig.java:205)
at org.vfny.geoserver.servlets.FreefsLog.init(FreefsLog.java:64)
at javax.servlet.GenericServlet.init(GenericServlet.java:256)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:935)
at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:823)
at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:3420)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:3608)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:821)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:807)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:579)
at org.apache.catalina.core.StandardHostDeployer.install(StandardHostDeployer.java:307)
at org.apache.catalina.core.StandardHost.install(StandardHost.java:772)
at org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:492)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:400)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:718)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:358)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:166)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1196)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:738)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1188)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:347)
at org.apache.catalina.core.StandardService.start(StandardService.java:497)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:2190)
at org.apache.catalina.startup.Catalina.start(Catalina.java:512)
at org.apache.catalina.startup.Catalina.execute(Catalina.java:400)
at org.apache.catalina.startup.Catalina.process(Catalina.java:180)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:203)

I've been pottering around with Geotools (ie the full Maven build)
trying to
have a look at some elements that will potentially come in handy in
the
future and I seem to have caused Geoserver to crumble.

I have completely blown away and rebuilt Tomcat and Geoserver, and
rebuilt
the WAR file and placed it in the webapps directory for Tomcat. But
the
problem I'm having still remains.

The problem is that Geoserver doesn't even begin to configure when I
startup
Tomcat. I checked the logs in Tomcat and the cause of the problem
appears to
be this:

java.lang.NoClassDefFoundError: org/geotools/data/DataStoreFactorySpi
(full
stack below)

which is suspiciously where I was testing something out with
Geotools, but I
thought this would be fixed when I rebuilt Geoserver (I completely
blew away
the Geoserver directory and existing WAR files and used a more recent
download version of the code).

Hmmmm... Sounds like you're probably in version hell, which isn't too
surprising since the core developers have been wrestling with stuff
today as well. What version did you download? Did you get it from
vwfs.refractions.net? Also geotools could be the source of problems,
as I just updated gt2's DataSourceFactorySpi interface for an
isAvailable tag so we can include gt2-oracle-spatial.jar with the
geoserver war. Since you don't have developers access to gt2 those
changes will take a bit to show up.

Chris

Any help/suggestions would be greaty appreciated.

Thanks,
Stuart

javax.servlet.ServletException: Servlet.init() for servlet FreefsLog
threw
exception
at

org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:963

)
at

org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:823)

at

org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:3

420)
at

org.apache.catalina.core.StandardContext.start(StandardContext.java:3608)

at

org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:82

1)
at

org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:807)

at
org.apache.catalina.core.StandardHost.addChild(StandardHost.java:579)
at

org.apache.catalina.core.StandardHostDeployer.install(StandardHostDeployer.ja

va:307)
at
org.apache.catalina.core.StandardHost.install(StandardHost.java:772)
at
org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:492)
at
org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:400)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:718)
at

org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:358)

at

org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport

.java:166)
at
org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1196)
at
org.apache.catalina.core.StandardHost.start(StandardHost.java:738)
at
org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1188)
at
org.apache.catalina.core.StandardEngine.start(StandardEngine.java:347)
at

org.apache.catalina.core.StandardService.start(StandardService.java:497)

at

org.apache.catalina.core.StandardServer.start(StandardServer.java:2190)

at org.apache.catalina.startup.Catalina.start(Catalina.java:512)
at org.apache.catalina.startup.Catalina.execute(Catalina.java:400)
at org.apache.catalina.startup.Catalina.process(Catalina.java:180)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at

sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)

at

sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.

java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:203)
----- Root Cause -----
java.lang.NoClassDefFoundError: org/geotools/data/DataStoreFactorySpi
at java.lang.ClassLoader.defineClass0(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:537)
at

java.security.SecureClassLoader.defineClass(SecureClassLoader.java:123)

at java.net.URLClassLoader.defineClass(URLClassLoader.java:251)
at java.net.URLClassLoader.access$100(URLClassLoader.java:55)
at java.net.URLClassLoader$1.run(URLClassLoader.java:194)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:187)
at java.lang.ClassLoader.loadClass(ClassLoader.java:289)
at java.lang.ClassLoader.loadClass(ClassLoader.java:282)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:274)
at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
at

org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java

:1355)
at

org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java

:1289)
at
org.geotools.factory.FactoryFinder.newInstance(FactoryFinder.java:87)
at
org.geotools.factory.FactoryFinder.getFactory(FactoryFinder.java:156)
at
org.geotools.factory.FactoryFinder.getFactory(FactoryFinder.java:139)
at
org.geotools.factory.FactoryFinder.access$000(FactoryFinder.java:59)
at org.geotools.factory.FactoryFinder$1.next(FactoryFinder.java:299)
at
org.vfny.geoserver.config.ServerConfig.<init>(ServerConfig.java:85)
at
org.vfny.geoserver.config.ServerConfig.load(ServerConfig.java:205)
at org.vfny.geoserver.servlets.FreefsLog.init(FreefsLog.java:64)
at javax.servlet.GenericServlet.init(GenericServlet.java:256)
at

org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:935

)
at

org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:823)

at

org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:3

420)
at

org.apache.catalina.core.StandardContext.start(StandardContext.java:3608)

at

org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:82

1)
at

org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:807)

at
org.apache.catalina.core.StandardHost.addChild(StandardHost.java:579)
at

org.apache.catalina.core.StandardHostDeployer.install(StandardHostDeployer.ja

va:307)
at
org.apache.catalina.core.StandardHost.install(StandardHost.java:772)
at
org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:492)
at
org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:400)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:718)
at

org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:358)

at

org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport

.java:166)
at
org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1196)
at
org.apache.catalina.core.StandardHost.start(StandardHost.java:738)
at
org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1188)
at
org.apache.catalina.core.StandardEngine.start(StandardEngine.java:347)
at

org.apache.catalina.core.StandardService.start(StandardService.java:497)

at

org.apache.catalina.core.StandardServer.start(StandardServer.java:2190)

at org.apache.catalina.startup.Catalina.start(Catalina.java:512)
at org.apache.catalina.startup.Catalina.execute(Catalina.java:400)
at org.apache.catalina.startup.Catalina.process(Catalina.java:180)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at

sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)

at

sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.

java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:203)

----------------------------------------------------------
This mail sent through IMP: https://webmail.limegroup.com/

Quoting Chris Holmes <cholmes@anonymised.com>:

> I've been pottering around with Geotools (ie the full Maven build)
> trying to
> have a look at some elements that will potentially come in handy in
> the
> future and I seem to have caused Geoserver to crumble.

Not your fault, I am pretty sure it is mine :frowning:

Of course I like to annouce I have screwed up when I have a solution - give me
another 20 min. When I have things working I will email the list.

I am on irc from now until this works if you have any questions,
Jody

Quoting jgarnett@anonymised.com:

Quoting Chris Holmes <cholmes@anonymised.com>:

> > I've been pottering around with Geotools (ie the full Maven build)
> > trying to
> > have a look at some elements that will potentially come in handy in
> > the
> > future and I seem to have caused Geoserver to crumble.

Not your fault, I am pretty sure it is mine :frowning:

Of course I like to annouce I have screwed up when I have a solution - give
me another 20 min. When I have things working I will email the list.

Okay so it was more then 20 min, geotools just takes time. The libs commited to
GeoServer are now safe for general consumption again.

Jody