0
在我的春天/ OpenJPA的基于应用程序中,我有两个简单的实体:JPA合并问题
@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()始终为空,事件如果我在这里设置空的hashmap。 :/为什么
我认为这将有助于如果你可以显示调用'createEntity'的代码。特别是,如果你能够证明当你构造你的游戏对象时,你会有一条线,比如'games = new ArrayList();' –
John
2010-02-23 12:03:32
其中是标题的“合并”吗? – Bozho 2010-02-23 13:05:56