Невозможно добавить более одного отношения между узлами в neo4j
Я пытаюсь смоделировать социальную сеть с Neo4J. Это требует, чтобы пользователь мог иметь несколько отношений с другим пользователем. Когда я пытаюсь сохранить эти отношения, сохраняется только одно. Например, это тестовый модуль, который я делаю:
@Test
public void testFindConnections() {
Id id1 = new Id();
id1.setId("first-node");
Id id2 = new Id();
id2.setId("second-node");
idService.save(id2);
id1.connectedTo(id2, "first-rel");
id1.connectedTo(id2, "second-rel");
idService.save(id1);
for (Id im : idService.findAll()) {
System.out.println("-" + im.getId());
if (im.getConnections().size() > 0) {
for (ConnectionType ite : im.getConnections()) {
System.out
.println("--" + ite.getId() + " " + ite.getType());
}
}
}
}
Это должно вывести:
-first-node
--0 first-rel
--1 second-rel
-second-node
--0 first-rel
--1 second-rel
Тем не менее, он выводит:
-first-node
--0 first-rel
-second-node
--0 first-rel
Это мой узел сущности:
@NodeEntity
public class Id {
@GraphId
Long nodeId;
@Indexed(unique = false)
String id;
@Fetch
@RelatedToVia(direction=Direction.BOTH)
Collection connections = new HashSet();
}
И мои отношения сущности:
@RelationshipEntity(type = "CONNECTED_TO")
public class ConnectionType {
@GraphId Long id;
@StartNode Id fromUser;
@EndNode Id toUser;
String type;
}
В чем может быть проблема? Есть ли другой способ смоделировать несколько отношений между узлами?