java - EclipseLink级联持续异常

标签 java jpa many-to-many eclipselink

尝试保留具有映射到表主题的多对多字段的对象 Word() 时,我收到“在同步期间,通过未标记级联 PERSIST 的关系找到了新对象”。关系桥表是Topic_links。使问题变得复杂的是,我总是使用 Eclipse Workbench 来设置我的实体,这使得很难找到解决方案,因为大多数人使用注释来建议答案,而工作台不使用注释。我尚未在工作台中找到将关系的 CASCADE 选项设置为 PERSIST 的方法。我已将以下条目添加到 persistence.xml:

<property name="eclipselink.persistence-context.persist-on-commit" value="true"/>

异常仍在抛出。

最佳答案

我不太确定语法,因为 Eclipse Workbench 似乎使用 native EclipseLink ORM XML 文件,但使用标准 JPA XML 映射,您可以通过添加 <cascade> 来设置级联<many-to-many> 内的元素,像这样:

<many-to-many name="projects" target-entity="Project">
    <join-table name="PROJ_EMP">
        <join-column name="EMP_ID" />
        <inverse-join-column name="PROJ_ID" />
    </join-table>
    <cascade>
        <cascade-persist/>
    </cascade>
</many-to-many>

但是你真的应该改变你的习惯,Eclipse Workbench对于JPA开发来说并不理想。在此引用 James Sutherland Workbench to use annotations线程:

The EclipseLink Workbench is the UI for the native (old) EclipseLink ORM XML file, OXM and EIS, is it not meant for JPA development. Eclipse Dali, Oracle JDeveloper or other such JPA tools should be used for this.

关于java - EclipseLink级联持续异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3484085/

相关文章:

Java:ArrayAdapter 获取单击的行 TextView 值

java - 有人可以解释一下这段代码中发生了什么吗?无法理解简单的oops程序

java - 自定义 View CustomView 未使用 2 或 3 参数 View 构造函数

Java Spring RestFul API

java - 如何使用 JPA 多对多联接到同一个表来分层检索数据

java - 许多 Tomcat 线程正在 hibernate - org.apache.catalina.connector.CoyoteAdapter.postParseRequest

java - 为什么我的单向 @ManyToOne 关系中的表没有加入 Spring Data findAll() 查询?

java - 如何在 JPA 中映射自定义集合?

java - 删除时 JPA "org.apache.openjpa.persistence.ArgumentException"

java - 多对多关系的jpa标准