2014-02-18 160 views
0

我跑春季數據Neo4j的版本2.3.3創建未閉合的括號例外。當我嘗試通過我的GraphRepository執行CREATE語句,我得到以下異常:在彈簧數據的Neo4j

org.springframework.dao.InvalidDataAccessResourceUsageException: Error executing statement ... nested exception is Unclosed parenthesis 
"CREATE (:line{id:1})-[:ROOT]->(:point{id:10})-[:NEXT]->(:point{id:11})-[:NEXT]->(:point{id:12})-[:NEXT]->(p:point{id:13})" 
     ^

...只是隱藏印刷在其下方同樣的事情,和^出現在正確的位置。正如你可以看到,如果你看看我的查詢,沒有未封閉的括號。這裏發生了什麼?

編輯:出於測試目的,我試圖減少聲明:CREATE (:line{id:1}),我也得到了相同的結果。

編輯:我嘗試升級我的聚甲醛使用3.0.0版本,現在我得到以下異常:

Error creating bean with name 'controller': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: org.example.model.LineRepo org.example.controller.Controller.lineRepo; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'lineRepo': Cannot resolve reference to bean 'neo4jTemplate' while setting bean property 'neo4jTemplate'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.data.neo4j.config.Neo4jConfiguration#0': Cannot resolve reference to bean 'graphDatabaseService' while setting bean property 'graphDatabaseService'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'graphDatabaseService' defined in ServletContext resource [/WEB-INF/dispatcher-servlet.xml]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [org.neo4j.kernel.EmbeddedGraphDatabase]: Constructor threw exception; nested exception is java.lang.RuntimeException: org.neo4j.kernel.lifecycle.LifecycleException: Component '[email protected]' failed to initialize. Please see attached cause exception. 

給出的最深根源的例外是:

java.lang.NoSuchMethodError: org.neo4j.kernel.impl.nioneo.store.FileSystemAbstraction.getOrCreateThirdPartyFileSystem(Ljava/lang/Class;Lorg/neo4j/helpers/Function;)Lorg/neo4j/kernel/impl/nioneo/store/FileSystemAbstraction$ThirdPartyFileSystem; 

除了升級依賴關係以外,沒有任何更改。它所指的'controller' bean是我的控制器我的GraphRepository

回答

2

Spring Data Neo4j 2.3.3適用於Neo4j 1.9,它不支持標籤(您在Cypher中使用的語法)。你需要使用3.0.0才能獲得Neo4j 2.0的支持。

+0

有趣。我只是嘗試升級我的POM使用3.0.0,現在我得到了一個不同的例外。請參閱我的編輯。 – drewmoore

+0

如果您是從同一商店開始的,則需要設置選項以允許升級。 –