Neo4j org.springframework.data.mapping.model.MappingException:未知的持久实体java.lang.String
我已经从Spring-data-Neo4j 3.0.0升级到3.0.1,以使用新的标签功能。 派生查找程序(使用以前的版本)会出现以下异常:Neo4j org.springframework.data.mapping.model.MappingException:未知的持久实体java.lang.String,neo4j,spring-data-neo4j,Neo4j,Spring Data Neo4j,我已经从Spring-data-Neo4j 3.0.0升级到3.0.1,以使用新的标签功能。 派生查找程序(使用以前的版本)会出现以下异常: org.springframework.data.mapping.model.MappingException: Unknown persistent entity java.lang.String 我不知道为什么会发生这种情况:( 我试图在我的存储库查找器上添加@Query(“MATCH(e:Event),其中e.title={0}返回e”),但我得到
org.springframework.data.mapping.model.MappingException: Unknown persistent entity java.lang.String
我不知道为什么会发生这种情况:(
我试图在我的存储库查找器上添加@Query(“MATCH(e:Event),其中e.title={0}返回e”)
,但我得到了相同的异常
我认为这是一个Mongodb-Neo4j冲突,因为当我调试时,我看到在JDKDDynamicApproxy的invoke方法中,代理参数是org.springframework.data.Mongodb.repository.support。SimpleMongoRepository@3c8f3375虽然我的实体用@NodeEntity注释,但在上下文配置中,我有以下内容:
<context:annotation-config/>
<context:spring-configured/>
<context:component-scan base-package="com.xxx"/>
<!-- Neo4J -->
<neo4j:config storeDirectory="D:/neo4j-enterprise-2.0.1/data/mydb" base-package="com.xxx.domain.graph" />
<neo4j:repositories base-package="com.xxx.repository.graph" />
<!-- MongoDB -->
<!-- Factory bean that creates the Mongo instance -->
<mongo:mongo host="localhost" port="27017">
<mongo:options
connections-per-host="5"
connect-timeout="30000"
max-wait-time="10000"
write-number="1"
write-timeout="0"
write-fsync="true"/>
</mongo:mongo>
<mongo:db-factory dbname="test" mongo-ref="mongo"/>
<!-- MongoTemplate for connecting and quering the documents in the database -->
<bean id="mongoTemplate" class="org.springframework.data.mongodb.core.MongoTemplate">
<constructor-arg ref="mongo"/>
<constructor-arg name="databaseName" value="xxxx"/>
</bean>
<mongo:repositories base-package="com.xxx.repository.document" />
<tx:annotation-driven mode="proxy"/>
如果有帮助,我必须将spring data commons升级到1.7.1
现在一切正常!通过对同一查询使用Neo4jTemplate查询执行,我能够完成这项工作,但这意味着我将无法使用GraphRespository finders:((我将继续祈祷,直到找到解决方案:D