Java OpenJPA+;将OpenJPA从1.2更新到2.2后的Derby Manytone问题

Java OpenJPA+;将OpenJPA从1.2更新到2.2后的Derby Manytone问题,java,junit,derby,openjpa,many-to-one,Java,Junit,Derby,Openjpa,Many To One,我刚刚将OpenJPA从1.2版更新到2.2版,我的许多JUnits都失败了。大多数是因为多人关系改变了行为。假设我们有两个实体 package org.my; import javax.persistence.Entity; import javax.persistence.FetchType; import javax.persistence.ManyToOne; @Entity public class Many { @ManyToOne(fetch = FetchType.

我刚刚将OpenJPA从1.2版更新到2.2版,我的许多JUnits都失败了。大多数是因为多人关系改变了行为。假设我们有两个实体

package org.my;

import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.ManyToOne;

@Entity
public class Many {

    @ManyToOne(fetch = FetchType.LAZY, optional = false)
    private One one;

    public One getOne() {
        return one;
    }

    public void setOne(One one) {
        this.one = one;
    }

}


我以为OpenJPA猫找到一个对象并将其放入多个域中。一个域,我错了吗?如果没有,我如何实现这一点?

一个对象的列表中的每个多个对象在保存前应首先是设置一个

package org.my;

import java.util.List;

@Entity
public class One {
    @OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "one")
    private List<Many> many;

    public List<Many> getMany() {
        return many;
    }

    public void setMany(List<Many> many) {
        this.many = many;
    }

}
org.apache.openjpa.persistence.InvalidStateException: The field "one" of instance "org.my.Many@4d9cfefb" contained a null value; the metadata for this field specifies that nulls are illegal.