Spring Data Neo4j - проблемы @RelationshipType
У меня возникают трудности с поиском отношений, когда тип отношения помечен значком@RelationshipType
поле.
Отношения выглядят правильными в Neoclipse, но я не получаю результатов в моем приложении.
Код, который не работает (упрощен):
@NodeEntity
public abstract class Entity {
@RelatedToVia
private Collection<Relationship> relationships;
public Relationship relatedTo(Entity entity, String type) {
Relationship relationship = new Relationship(type, this, entity);
relationships.add(relationship);
return relationship;
}
...
}
а также:
@RelationshipEntity
public class Relationship {
@RelationshipType
private String type;
...
}
Код, который работает:
@RelationshipEntity(type = "something")
public class Relationship {
...
}
Однако это не подходит для моего варианта использования (у меня есть куча разныхRelationship
типы между произвольными комбинациямиEntity
экземпляров.
Полный тестовый код приведен ниже.Agency
а такжеItem
оба подклассыEntity
.
// Create first entity
Agency arnz = agencyRepository.save(new Agency());
arnz.setCode("ARNZ");
agencyRepository.save(arnz);
// Create second entity
Item r123 = itemRepository.save(new Item());
r123.setCode("R123");
// Create parent/child relationship between entities
r123.relatedTo(arnz, EntityRelationshipType.PARENT);
itemRepository.save(r123);
// Retrieve entity from database
Entity entity = itemRepository.findByCode("R123");
// Verify that relationship is present
assertThat(entity.getRelationships().iterator().hasNext(), is(true));
Последняя строка - где тест не пройден. Есть какие-нибудь подсказки?
M
PS. Я любитель ранга с Neo4j и только что нашел@RelationshipType
так что я вполне могу делать что-то смешно неправильно. Я надеюсь, что это так!