Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/329.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Neo4j 2.0和Spring数据3.0 Rest启动时出现异常_Java_Spring_Neo4j_Spring Data Neo4j - Fatal编程技术网

Java Neo4j 2.0和Spring数据3.0 Rest启动时出现异常

Java Neo4j 2.0和Spring数据3.0 Rest启动时出现异常,java,spring,neo4j,spring-data-neo4j,Java,Spring,Neo4j,Spring Data Neo4j,我正在尝试升级到Neo4j 2.0和Spring Data 3.0。当应用程序启动时,在执行任何代码之前,我得到一个空指针 Caused by: org.springframework.dao.InvalidDataAccessResourceUsageException: Error executing statement MATCH (ref:ReferenceNode {name:{name}}) RETURN ref; nested exception is org.springfram

我正在尝试升级到Neo4j 2.0和Spring Data 3.0。当应用程序启动时,在执行任何代码之前,我得到一个空指针

Caused by: org.springframework.dao.InvalidDataAccessResourceUsageException: Error executing statement MATCH (ref:ReferenceNode {name:{name}}) RETURN ref; nested exception is org.springframework.dao.InvalidDataAccessResourceUsageException: Error executing statement MATCH (ref:ReferenceNode {name:{name}}) RETURN ref; nested exception is java.lang.NullPointerException
at org.springframework.data.neo4j.support.query.CypherQueryEngine.query(CypherQueryEngine.java:56)
at org.springframework.data.neo4j.support.ReferenceNodes.executeQuery(ReferenceNodes.java:77)
at org.springframework.data.neo4j.support.ReferenceNodes.getReferenceNode(ReferenceNodes.java:81)
at org.springframework.data.neo4j.support.typerepresentation.SubReferenceNodeTypeRepresentationStrategy.isStrategyAlreadyInUse(SubReferenceNodeTypeRepresentationStrategy.java:95)
at org.springframework.data.neo4j.support.typerepresentation.TypeRepresentationStrategyFactory.chooseStrategy(TypeRepresentationStrategyFactory.java:56)
at org.springframework.data.neo4j.support.typerepresentation.TypeRepresentationStrategyFactory.<init>(TypeRepresentationStrategyFactory.java:39)
at org.springframework.data.neo4j.config.Neo4jConfiguration.typeRepresentationStrategyFactory(Neo4jConfiguration.java:146)
at org.springframework.data.neo4j.config.Neo4jConfiguration$$EnhancerByCGLIB$$4b018b97.CGLIB$typeRepresentationStrategyFactory$6(<generated>)
at org.springframework.data.neo4j.config.Neo4jConfiguration$$EnhancerByCGLIB$$4b018b97$$FastClassByCGLIB$$5306fd26.invoke(<generated>)
at org.springframework.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:228)
at org.springframework.context.annotation.ConfigurationClassEnhancer$BeanMethodInterceptor.intercept(ConfigurationClassEnhancer.java:286)
at org.springframework.data.neo4j.config.Neo4jConfiguration$$EnhancerByCGLIB$$4b018b97.typeRepresentationStrategyFactory(<generated>)
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.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:160)
... 112 more
Caused by: org.springframework.dao.InvalidDataAccessResourceUsageException: Error executing statement MATCH (ref:ReferenceNode {name:{name}}) RETURN ref; nested exception is java.lang.NullPointerException
at org.springframework.data.neo4j.support.query.CypherQueryEngine.parseAndExecuteQuery(CypherQueryEngine.java:67)
at org.springframework.data.neo4j.support.query.CypherQueryEngine.query(CypherQueryEngine.java:53)
... 128 more
Caused by: java.lang.NullPointerException
at org.neo4j.cypher.ExecutionEngine.prepare(ExecutionEngine.scala:75)
at org.neo4j.cypher.ExecutionEngine.execute(ExecutionEngine.scala:60)
at org.neo4j.cypher.ExecutionEngine.execute(ExecutionEngine.scala:65)
at org.neo4j.cypher.javacompat.ExecutionEngine.execute(ExecutionEngine.java:78)
at org.springframework.data.neo4j.support.query.CypherQueryEngine.parseAndExecuteQuery(CypherQueryEngine.java:65)
... 129 more
原因:org.springframework.dao.InvalidDataAccessResourceUsageException:执行语句匹配时出错(ref:ReferenceNode{name:{name}})返回ref;嵌套异常为org.springframework.dao.InvalidDataAccessResourceUsageException:执行语句匹配时出错(ref:ReferenceNode{name:{name}})返回ref;嵌套异常是java.lang.NullPointerException
位于org.springframework.data.neo4j.support.query.CypherQueryEngine.query(CypherQueryEngine.java:56)
位于org.springframework.data.neo4j.support.ReferenceNodes.executeQuery(ReferenceNodes.java:77)
位于org.springframework.data.neo4j.support.ReferenceNodes.getReferenceNode(ReferenceNodes.java:81)
位于org.springframework.data.neo4j.support.typerepresentation.SubReferenceNodeTypeRepresentationStrategy.IsStrategyYalReadyUse(SubReferenceNodeTypeRepresentationStrategy.java:95)
位于org.springframework.data.neo4j.support.typerepresentation.TypeRepresentationStrategyFactory.chooseStrategy(TypeRepresentationStrategyFactory.java:56)
位于org.springframework.data.neo4j.support.typerepresentation.TypeRepresentationStrategyFactory。(TypeRepresentationStrategyFactory.java:39)
位于org.springframework.data.neo4j.config.Neo4jConfiguration.typeRepresentationStrategyFactory(Neo4jConfiguration.java:146)
位于org.springframework.data.neo4j.config.Neo4jConfiguration$$enhancerbyglib$$4b018b97.CGLIB$typeRepresentationStrategyFactory$6()
在org.springframework.data.neo4j.config.Neo4jConfiguration$$EnhancerByGlib$$4b018b97$$FastClassByCGLIB$$5306fd26.invoke()上
位于org.springframework.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:228)
位于org.springframework.context.annotation.ConfigurationClassEnhancer$BeanMethodInterceptor.intercept(ConfigurationClassEnhancer.java:286)
在org.springframework.data.neo4j.config.Neo4jConfiguration$$enhancerbyglib$$4b018b97.typeRepresentationStrategyFactory()上
在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)处
在sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)中
在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)中
位于java.lang.reflect.Method.invoke(Method.java:606)
位于org.springframework.beans.factory.support.SimpleInstallationStrategy.instantiate(SimpleInstallationStrategy.java:160)
... 112多
原因:org.springframework.dao.InvalidDataAccessResourceUsageException:执行语句匹配时出错(ref:ReferenceNode{name:{name}})返回ref;嵌套异常是java.lang.NullPointerException
位于org.springframework.data.neo4j.support.query.CypherQueryEngine.parseAndExecuteQuery(CypherQueryEngine.java:67)
位于org.springframework.data.neo4j.support.query.CypherQueryEngine.query(CypherQueryEngine.java:53)
... 还有128个
原因:java.lang.NullPointerException
位于org.neo4j.cypher.ExecutionEngine.prepare(ExecutionEngine.scala:75)
位于org.neo4j.cypher.ExecutionEngine.execute(ExecutionEngine.scala:60)
位于org.neo4j.cypher.ExecutionEngine.execute(ExecutionEngine.scala:65)
位于org.neo4j.cypher.javacompat.ExecutionEngine.execute(ExecutionEngine.java:78)
位于org.springframework.data.neo4j.support.query.CypherQueryEngine.parseAndExecuteQuery(CypherQueryEngine.java:65)
... 129更多
Pom.xml上的Neo4j和spring数据依赖关系

<properties>
    <spring.version>3.2.6.RELEASE</spring.version>
    <springSecurity.version>3.2.0.RELEASE</springSecurity.version>
    <jackson.version>1.9.13</jackson.version>
    <neo4j.version>2.0.0</neo4j.version>
    <springDataNeo4j.version>3.0.0.RC1</springDataNeo4j.version>
    <neo4j-rest-graphdb.version>2.0.0</neo4j-rest-graphdb.version>
</properties>
<!--Neo4j-->
    <dependency>
        <groupId>org.neo4j</groupId>
        <artifactId>neo4j</artifactId>
        <version>${neo4j.version}</version>
    </dependency>

    <dependency>
        <groupId>org.springframework.data</groupId>
        <artifactId>spring-data-neo4j</artifactId>
        <version>${springDataNeo4j.version}</version>
    </dependency>


    <dependency>
        <groupId>org.neo4j</groupId>
        <artifactId>neo4j-rest-graphdb</artifactId>
        <version>${neo4j-rest-graphdb.version}</version>
    </dependency>

3.2.6.1发布
3.2.0.1发布
1.9.13
2.0.0
3.0.0.RC1
2.0.0
org.neo4j
neo4j
${neo4j.version}
org.springframework.data
spring-data-neo4j
${springDataNeo4j.version}
org.neo4j
neo4j静止图
${neo4j rest graphdb.version}
上下文文件

<neo4j:config graphDatabaseService="graphDatabaseService" />

<bean id="graphDatabaseService" class="org.neo4j.rest.graphdb.RestGraphDatabase">
    <constructor-arg value="http://localhost:7474/db/data"/>
</bean>

<context:annotation-config />

Neo4j已启动并运行


通过
http://localhost:7474/browser/
一切正常,包括有问题的查询匹配(ref:ReferenceNode{name:{name}})返回ref

我相信您不需要任何
org.neo4j.
依赖项。也许它只适用于

只能从SDN中的一个位置调用
getReferenceNode
方法,位于
org.springframework.data.neo4j.support.typerepresentation.SubReferenceNodeTypeRepresentationStrategy
()

此调用正在查找具有标签
:ReferenceNode
和属性
name
等于
root
的节点

因此,我建议尝试使用Cypher创建这样一个节点:

CREATE (n:ReferenceNode {name:"root"}) RETURN n;

然后查看错误是否仍然发生。

谢谢您的提示。关于不需要org.neo4j.*依赖项,您是对的。我把它们排除在外,它的构造很好。但是,在服务器启动后,我仍然会收到完全相同的异常。我发现以下讨论可能与您的问题有关:“在版本M06和RC1之间的Neo4j中,参考节点概念已被删除。SDN 3.0 M1仍然使用Neo4j 2.0 M06并依赖于参考节点。因此,不幸的是,SDN还不能与Neo4j 2.0 RC1一起使用。“但是您使用的是3.0.0.RC1而不是3.0.0.M1,因此您应该检查它是否依赖于较新版本的Neo4J。根据这一点,它似乎包含在3.0.0.RC1中,它依赖于Neo4J 2.0。不幸的是,它没有解决问题。我认为抛出null指针是因为传递给查询的参数为null。“传递给查询的参数为null”-这里有什么消息吗?