Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java EJB3持久性,字段为';它不是一个实体_Java_Jpa - Fatal编程技术网

Java EJB3持久性,字段为';它不是一个实体

Java EJB3持久性,字段为';它不是一个实体,java,jpa,Java,Jpa,我有以下情况 @Entity public class myEntity implements Serializable { private AnotherClass anotherClass; } public class AnotherClass implements Serializable { private String ... private String ... } 但是,另一个类没有使用@实体进行注释。我可以成功地部署bean,但当我尝试持久化M

我有以下情况

@Entity
public class myEntity implements Serializable {

    private AnotherClass anotherClass;
}


public class AnotherClass implements Serializable {

   private String ...
   private String ...


}
但是,
另一个类
没有使用
@实体
进行注释。我可以成功地部署bean,但当我尝试持久化
MyEntity
类实例时,它会给我
noserializableeexception


这是因为
另一个类
没有用
@实体
进行注释吗?

本质上是的,尽管这里还有其他一些事情

由于
另一个类
既不是
@实体
也不是
@可嵌入的
,JPA可能会尝试将其序列化为二进制字段。它似乎在尝试此操作,但
notserializableeexception
表明
MyEntity
另一个类的某个字段不可序列化,从而导致异常

几乎可以肯定的是,您不希望另一个类作为二进制文件持久化,因此您需要对它进行注释,以告诉JPA如何持久化它