有没有办法从spring-data-neo4j [SDN]数据库中简单检索某种类型的所有关系 - 其中类型是@RelationshipEntity
带注释的类 - ? (与2.0.0.RC1 &嵌入式DB工作)如何从(spring-data-)neo4j数据库检索所有关系?
当我试图通过SDN提供的方法:
relationShipRepository.findAll()
它给了我下面的错误:
org.neo4j.graphdb.NotFoundException: __type__ property not found for RelationshipImpl #9672 of type 7 between Node[4844] and Node[4875].
完整堆栈跟踪: http://pastebin.com/j2gqcjxh(虽然看
解决方案将是使用l ow level(neo4j)API(即GraphDatabaseService
)来检索所有节点,然后为每个节点检索它们的所有关系,并验证它们的__type__
字段是否与我感兴趣的关系类型匹配。但为什么要提供findAll
关系方法?
简单的解释是建议的接口对于节点和关系是相同的 - 但是有没有文档说我们不允许使用findAll
进行关系?
或者:检查关系的实体在DB,它违背了异常,因为型正确定义为预期的,这是可能的,一旦你检索到的节点中检索通过高水平(SDN)API的关系和你打电话getRelationship*(..)
在其他说明:有没有人知道ImpermanentDataGraph
服务将包含在V2 +?
是的,9672是由'relaTo'创建的'RelationshipEntity',用于'RelClass rel = nodeEntity.relateTo(otherNodeEntity,RelClass.class,\t RELATIONSHIP_NAME);'。 RelClass用'@ RelationshipEntity'注释。在我使用'@ RelatedToVia'注解的字段中检索应用程序的某些部分。不过,我无法使用相应的回购库findAll方法来检索它。 – Matyas
如果问题仍然存在,您可以在http://spring.neo4j.org/issues提出问题(用一个测试案例显示这个问题)吗? –
问题不再存在(1.6M02)。感谢您的帮助(并且很抱歉没有回复您)。如果我发现可疑行为,并通过测试用例证明,我会将其发布到那里。目前我没有遇到过这样的问题。 – Matyas