SDN4 - GraphRepository findOne vs findById

时间:2015-07-17 18:15:18

标签: neo4j spring-data-neo4j-4

我正在使用Spring Data Neo4j 4.0.0.RC1,并注意到使用GraphRepository findOne方法的一些有趣行为。

有两个GraphRepository扩展程序:

public interface SimpleNodeRepository extends GraphRepository<SimpleNode> {

}

public interface OtherNodeRepository extends GraphRepository<OtherNode> {

}

然后给出一个完全空白的平板,说我创建了一个SimpleNode并且它被分配了1L的ID。当我拨打otherNodeRepository.findOne(1L)时,我会收到ClassCastException而不是null。这告诉我findOne方法正在获得SimpleNode并且不尊重SDN节点类型。

这是预期的行为吗?我认为这可以通过在相应的存储库接口中创建findById方法来解决,但它似乎违背了直觉,并且肯定与JPA存储库处理它的方式不一致。

1 个答案:

答案 0 :(得分:1)

这不是预期的行为。 https://jira.spring.io/browse/DATAGRAPH-707来跟踪此问题。

请使用解决方法直到修复。