首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用独立模式时Neo4jTemplate错误

使用独立模式时Neo4jTemplate错误
EN

Stack Overflow用户
提问于 2015-04-12 21:45:53
回答 1查看 399关注 0票数 0

在我的项目中,我使用了Spring3和Neo4j 2.0.1,我使用的是嵌入式模式,一切都很好。在我的代码中,我使用了Neo4jTemplate (在我的服务中使用了@Autowired)以及GraphRepository和RelationshipOperationsRepository。

我想迁移我的coode以使用独立模式。我所做的是:

  • 在Springcontext.xml中,我这样做了:

代码语言:javascript
复制
<!-- Neo4J -->
	<!-- neo4j:config storeDirectory="${neo.storeDir}" base-package="net.nextep.nextenergy.domain.graph" /-->
	<bean id="graphDatabase" 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" />

我试着运行它,我得到了一个错误:

代码语言:javascript
复制
Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'neo4jTemplate' is defined

然后我尝试从我的服务中删除@Autowired Neo4jTemplate,使用@Autowired private SpringRestGraphDatabase graphDB并以private Neo4jTemplate template = new Neo4jTemplate((GraphDatabase) graphDB)的方式创建一个新模板。

我仍然会犯同样的错误:

代码语言:javascript
复制
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

代码语言:javascript
复制
    @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);

}

我做错了吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-04-13 01:25:10

将您的bean命名为"graphDatabaseService“,并将其传递给您没有创建的配置:

代码语言:javascript
复制
<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" />
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29595006

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档