diff --git a/spring-data-neo4j-examples/cineasts-aspects/src/main/java/org/neo4j/cineasts/controller/MovieController.java b/spring-data-neo4j-examples/cineasts-aspects/src/main/java/org/neo4j/cineasts/controller/MovieController.java index ddfa15478..249e42a9c 100644 --- a/spring-data-neo4j-examples/cineasts-aspects/src/main/java/org/neo4j/cineasts/controller/MovieController.java +++ b/spring-data-neo4j-examples/cineasts-aspects/src/main/java/org/neo4j/cineasts/controller/MovieController.java @@ -104,7 +104,7 @@ public class MovieController { Person person = personRepository.findById(id); model.addAttribute("actor", person); model.addAttribute("id", id); - model.addAttribute("roles", IteratorUtil.asCollection(person.getRoles())); + model.addAttribute("roles", person.getRoles()); addUser(model); return "/actors/show"; } diff --git a/spring-data-neo4j-examples/cineasts-aspects/src/main/java/org/neo4j/cineasts/domain/Person.java b/spring-data-neo4j-examples/cineasts-aspects/src/main/java/org/neo4j/cineasts/domain/Person.java index 9cb5e9698..c0d38c4b0 100644 --- a/spring-data-neo4j-examples/cineasts-aspects/src/main/java/org/neo4j/cineasts/domain/Person.java +++ b/spring-data-neo4j-examples/cineasts-aspects/src/main/java/org/neo4j/cineasts/domain/Person.java @@ -110,16 +110,16 @@ public class Person { this.directedMovies.add(movie); } - @RelatedToVia(elementClass = Role.class, type = "ACTS_IN") - Iterable roles; + @RelatedToVia + Set roles; - public Iterable getRoles() { + public Set getRoles() { return roles; } public Role playedIn(Movie movie, String roleName) { - Role role = relateTo(movie, Role.class, "ACTS_IN"); - role.setName(roleName); + final Role role = new Role(movie,this,roleName); + getRoles().add(role); return role; } diff --git a/spring-data-neo4j-examples/cineasts-aspects/src/main/java/org/neo4j/cineasts/domain/Role.java b/spring-data-neo4j-examples/cineasts-aspects/src/main/java/org/neo4j/cineasts/domain/Role.java index e5a4dac27..964c23c0f 100644 --- a/spring-data-neo4j-examples/cineasts-aspects/src/main/java/org/neo4j/cineasts/domain/Role.java +++ b/spring-data-neo4j-examples/cineasts-aspects/src/main/java/org/neo4j/cineasts/domain/Role.java @@ -8,13 +8,22 @@ import org.springframework.data.neo4j.annotation.StartNode; * @author mh * @since 04.03.11 */ -@RelationshipEntity +@RelationshipEntity(type = "ACTS_IN") public class Role { @EndNode Movie movie; @StartNode Person actor; String name; + public Role() { + } + + public Role(Movie movie, Person actor, String roleName) { + this.movie = movie; + this.actor = actor; + this.name = roleName; + } + public String getName() { return name; }