3.3.0.M1:使用CypherRestGraphDatabase时未保存RelationShipEntity的属性?

时间:2015-01-09 13:23:21

标签: spring-data-neo4j

我遇到了3.3.0.M1的问题 - 我对REST远程处理的速度提升感到非常兴奋,但似乎关系属性没有正确保存到远程数据库中?

顺便说一句;这在3.2.1.RELEASE中“广告宣传”: - /

我有一个JUnit测试,使用嵌入式实例可以很好地工作,但在使用远程数据库时无法检索关系属性。 实际上,使用webconsole检查数据库会显示关系没有保存的属性。

混淆代码如下:

我的@NodeEntity有:

@RelatedToVia
private Set<MyRelationalEntity> links = Sets.newHashSet();

因此定义了MyRelationalEntity

@RelationshipEntity(type="RELATION_NAME")
public class MyRelationalEntity {
   @GraphId
   @Id
   private Long graphId;
   @Fetch @StartNode
   private TheEntity left;
   @Fetch @EndNode
   private TheEntity right;

   private String scope;
   ...
}

同样,当存储在嵌入式实例中时,scope属性存储并检索正常,但是通过远程数据库没有数据: - (

修改:但似乎__type__属性在关系

上设置正确

这可能是一个已知问题,但我在https://github.com/spring-projects/spring-data-neo4j看不到任何提交的问题。 但我想也许GitHub不用作ALM?

谢谢!

编辑2 :经过一些调试后,我想知道line 192 in EntityStateHandler可能是罪魁祸首吗? 空映射似乎传播到RestRelationShip类?

1 个答案:

答案 0 :(得分:1)

阿..

找到了这个:https://github.com/spring-projects/spring-data-neo4j/blob/master/spring-data-neo4j/src/main/java/org/springframework/data/neo4j/support/mapping/SourceStateTransmitter.java#L101

猜猜这解释了事情; - )

大概在3.3.0.RELEASE中一切都会非常出色 - 在那之前我会更喜欢慢速操作而不是缺少功能: - )

但是,仍然是:来自spring-data-neo4j团队的出色工作!