2015-04-12 176 views
0

在我的項目中,我將Spring 3與Neo4j 2.0.1一起使用,我使用嵌入模式並且一切正常。 在我的代碼中,我使用Neo4jTemplate(@Autowired在我的服務中)以及GraphRepository和RelationshipOperationsRepository。使用獨立模式時出現Neo4jTemplate錯誤

我想遷移我的代碼以使用獨立模式。下面是我所做的:

  • 在彈簧context.xml中,我做了這樣的:

<!-- Neo4J --> 
 
\t <!-- neo4j:config storeDirectory="${neo.storeDir}" base-package="net.nextep.nextenergy.domain.graph" /--> 
 
\t <bean id="graphDatabase" class="org.springframework.data.neo4j.rest.SpringRestGraphDatabase"> 
 
\t  <constructor-arg value="http://localhost:7474/db/data/" index="0"/> 
 
\t </bean> 
 
\t <neo4j:repositories base-package="net.nextep.nextenergy.repository.graph" />

我試圖運行它,我得到這個錯誤:我想試試刪除@Autowired Neo4jTemplate從我的服務,請使用@Autowired private SpringRestGraphDatabase graphDB並創建一個新的模板這樣private Neo4jTemplate template = new Neo4jTemplate((GraphDatabase) graphDB)

我仍然得到同樣的錯誤:

Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'userNodeRepository': Cannot resolve reference to bean 'neo4jTemplate' while setting bean property 'neo4jTemplate'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'neo4jTemplate' is defined 
... 
Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'neo4jTemplate' is defined 
... 

UserNodeRepository

@Repository 
    public interface UserNodeRepository extends GraphRepository<UserNode>, 
           RelationshipOperationsRepository<UserNode>{ 
    public UserNode findById(String id); 
    public Node findNodeById(String id); 
    @Query("match (u:UserNode)-[:HABILITATED]->(f:Folder) where ID(u) = {0} return f") 
    public Set<Folder> getAllowedFoldersFirstLevel(UserNode user); 

} 

我做錯了什麼?

回答

1

名稱的豆「graphDatabaseService」,並把它傳遞給你沒有創建的配置:

<neo4j:config graphDatabaseService="graphDatabaseService" base-package="net.nextep.nextenergy.domain.graph" /> 

<bean id="graphDatabaseService" class="org.springframework.data.neo4j.rest.SpringRestGraphDatabase"> 
     <constructor-arg value="http://localhost:7474/db/data/" index="0"/> 
    </bean> 

<neo4j:repositories base-package="net.nextep.nextenergy.repository.graph" /> 
+0

純Java註釋該解決方案將幫助我。 – Stephane

相關問題