В моем приложении на основе spring / openjpa у меня есть две простые сущности:
@Entity
public class Game {
@Id
@GeneratedValue
protected Long id;
@ManyToOne(cascade={CascadeType.PERSIST,CascadeType.MERGE})
@JoinColumn(name = "target_id")
protected GameObject target;
...}
@Entity
public class GameObject {
@Id
@GeneratedValue
protected Long id;
@Column
protected String name;
@OneToMany(mappedBy = "target", cascade = CascadeType.ALL)
protected Collection<Game> games;
...}
Я пытаюсь сохранить игровой объект со связанным targetObject:
@PersistenceContext
protected EntityManager entityManager;
@Override
@Transactional
public Game createEntity(Game entity) {
getEntityManager().persist(entity);
if (entity.getTarget() != null) {
entity.getTarget().getGames().add(this);
}
getEntityManager().getEntityManager().flush();
return entity;
}
И я получаю NullPointerException в строке: entity.getTarget (). GetGames () всегда null, событие, если я установил здесь пустой hashmap. : / Почему