Hi everyone!
First thing: I’m sending this to both geoserver and neo4j mailling lists. I hope someone can help!
Also, that’s my first time in neo4j list!
I just got geoserver 2.3.2 and Apache Tomcat 7.0.35 (maybe not tomcat lastest version)
Deployed the war file to webapps and geoserver run ok! Also fnished configurations (remove users.properties.old and so on).
I’m trying to configure neo4j as a geoserver store following these steps: https://github.com/neo4j/spatial#neo4j-spatial-geoserver-plugin
I did the following until now:
- git clone https://github.com/neo4j/spatial.git
This created a spatial dir.
-
cd spatial
-
mvn clean install (using a normal user. Build success =] )
-
unziped neo4j-spatial-0.12-neo4j-2.0.0-SNAPSHOT-server-plugin.zip generated at target dir to geoserver/WEB-INF/lib (backed up it before =) )
Now, When I start geoserver I see the errors right bellow this message.
I know that neo4j-spatial was only tested with geoserver 2.1.1. But it is a very old version, once its in 2.3.2 now. A lot of bug fixes and improvements along the way.
I’m really interested to make neo4j-spatial to work with geoserver 2.3.2. But I’m stuck at these errors. Can someone help?! Maybe some clue!
Neo4j-spatial worked with neo4j:
$ curl http://localhost:7474/db/data/
{
“extensions” : {
“CypherPlugin” : {
“execute_query” : “http://localhost:7474/db/data/ext/CypherPlugin/graphdb/execute_query”
},
“SpatialPlugin” : {
“addEditableLayer” : “http://localhost:7474/db/data/ext/SpatialPlugin/graphdb/addEditableLayer”,
“addCQLDynamicLayer” : “http://localhost:7474/db/data/ext/SpatialPlugin/graphdb/addCQLDynamicLayer”,
“findGeometriesWithinDistance” : “http://localhost:7474/db/data/ext/SpatialPlugin/graphdb/findGeometriesWithinDistance”,
“updateGeometryFromWKT” : “http://localhost:7474/db/data/ext/SpatialPlugin/graphdb/updateGeometryFromWKT”,
“addGeometryWKTToLayer” : “http://localhost:7474/db/data/ext/SpatialPlugin/graphdb/addGeometryWKTToLayer”,
“getLayer” : “http://localhost:7474/db/data/ext/SpatialPlugin/graphdb/getLayer”,
“addSimplePointLayer” : “http://localhost:7474/db/data/ext/SpatialPlugin/graphdb/addSimplePointLayer”,
“findGeometriesInBBox” : “http://localhost:7474/db/data/ext/SpatialPlugin/graphdb/findGeometriesInBBox”,
“addNodeToLayer” : “http://localhost:7474/db/data/ext/SpatialPlugin/graphdb/addNodeToLayer”
},
“GremlinPlugin” : {
“execute_script” : “http://localhost:7474/db/data/ext/GremlinPlugin/graphdb/execute_script”
}
},
“node” : “http://localhost:7474/db/data/node”,
“reference_node” : “http://localhost:7474/db/data/node/0”,
“node_index” : “http://localhost:7474/db/data/index/node”,
“relationship_index” : “http://localhost:7474/db/data/index/relationship”,
“extensions_info” : “http://localhost:7474/db/data/ext”,
“relationship_types” : “http://localhost:7474/db/data/relationship/types”,
“batch” : “http://localhost:7474/db/data/batch”,
“cypher” : “http://localhost:7474/db/data/cypher”,
“neo4j_version” : “1.9”
}
The errors in geoserver.log (and catalina.out):
18 Jun 11:55:35 ERROR [context.ContextLoader] - Context initialization failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘gwcFacade’ defined in URL [jar:file:/opt/tomcatGeoserver7035/webapps/geoserver/WEB-INF/lib/gwc-2.3.2.jar!/applicationContext.xml]: Cannot resolve reference to bean ‘gwcTLDispatcher’ while setting constructor argument; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘gwcTLDispatcher’ defined in URL [jar:file:/opt/tomcatGeoserver7035/webapps/geoserver/WEB-INF/lib/gwc-2.3.2.jar!/geowebcache-core-context.xml]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [org.geowebcache.layer.TileLayerDispatcher]: Constructor threw exception; nested exception is java.lang.NoSuchMethodError: org.apache.xerces.impl.xs.XMLSchemaLoader.loadGrammar([Lorg/apache/xerces/xni/parser/XMLInputSource;)V
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:328)
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:106)
at org.springframework.beans.factory.support.ConstructorResolver.resolveConstructorArguments(ConstructorResolver.java:630)
at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:148)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1035)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:939)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:485)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:294)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:225)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:291)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:585)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:913)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:464)
at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:385)
at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:284)
at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:111)
at org.geoserver.platform.GeoServerContextLoaderListener.contextInitialized(GeoServerContextLoaderListener.java:22)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4797)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5291)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:633)
at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:977)
at org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1655)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:722)
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘gwcTLDispatcher’ defined in URL [jar:file:/opt/tomcatGeoserver7035/webapps/geoserver/WEB-INF/lib/gwc-2.3.2.jar!/geowebcache-core-context.xml]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [org.geowebcache.layer.TileLayerDispatcher]: Constructor threw exception; nested exception is java.lang.NoSuchMethodError: org.apache.xerces.impl.xs.XMLSchemaLoader.loadGrammar([Lorg/apache/xerces/xni/parser/XMLInputSource;)V
at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:288)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1035)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:939)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:485)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:294)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:225)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:291)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193)
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:322)
… 32 more
Caused by: org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [org.geowebcache.layer.TileLayerDispatcher]: Constructor threw exception; nested exception is java.lang.NoSuchMethodError: org.apache.xerces.impl.xs.XMLSchemaLoader.loadGrammar([Lorg/apache/xerces/xni/parser/XMLInputSource;)V
at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:162)
at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:110)
at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:280)
… 41 more
Caused by: java.lang.NoSuchMethodError: org.apache.xerces.impl.xs.XMLSchemaLoader.loadGrammar([Lorg/apache/xerces/xni/parser/XMLInputSource;)V
at org.apache.xerces.jaxp.validation.XMLSchemaFactory.newSchema(Unknown Source)
at javax.xml.validation.SchemaFactory.newSchema(SchemaFactory.java:591)
at org.geowebcache.config.XMLConfiguration.validate(XMLConfiguration.java:811)
at org.geowebcache.config.XMLConfiguration.checkAndTransform(XMLConfiguration.java:785)
at org.geowebcache.config.XMLConfiguration.loadDocument(XMLConfiguration.java:689)
at org.geowebcache.config.XMLConfiguration.loadConfiguration(XMLConfiguration.java:392)
at org.geowebcache.config.XMLConfiguration.loadConfiguration(XMLConfiguration.java:380)
at org.geowebcache.config.XMLConfiguration.loadConfiguration(XMLConfiguration.java:371)
at org.geowebcache.config.XMLConfiguration.initialize(XMLConfiguration.java:870)
at org.geowebcache.layer.TileLayerDispatcher.initialize(TileLayerDispatcher.java:189)
at org.geowebcache.layer.TileLayerDispatcher.initialize(TileLayerDispatcher.java:164)
at org.geowebcache.layer.TileLayerDispatcher.reInit(TileLayerDispatcher.java:118)
at org.geowebcache.layer.TileLayerDispatcher.(TileLayerDispatcher.java:66)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:525)
at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:147)
… 43 more
Regards!
Rodrigo C. Antonialli
Rio Claro - SP - Brasil
LinkedIn: http://www.linkedin.com/in/rcaprofile
Contato: (19) 8136-2347
rcantonialli@anonymised.com
Skype: rc_antonialli