当我的开放式JPA实体映射设置为在一对一映射后列出的一对多映射时,我得到以下异常。当我切换订单时,我没有得到例外。
我假设正在应用XSD规则,但该规则的目的是什么?
无法执行目标 org.apache.openjpa:openjpa-maven-plugin:2.2.2:增强(增强) project:目标的执行增强器 org.apache.openjpa:openjpa-maven-plugin:2.2.2:增强失败: org.xml.sax.SAXException:找到无效的内容 元素'一对多'。之一 “{ “http://java.sun.com/xml/ns/persistence/orm”:一对之一, “http://java.sun.com/xml/ns/persistence/orm”:多对许多人来说, “http://java.sun.com/xml/ns/persistence/orm”:元件收集, “http://java.sun.com/xml/ns/persistence/orm”:嵌入 “http://java.sun.com/xml/ns/persistence/orm”:transient}'是预期的。
<!-- FAILED -->
<entity class="com.test.comm">
<table schema="dbo" name="tbl_comm_data"/>
<attributes>
<id name="commId">
<column name="comm_id"/>
</id>
<basic name="commName">
<column name="comm_name"/>
</basic>
<one-to-one name="CommType" target-entity="com.test.TblCommType" mapped-by="TblComm" fetch="LAZY">
<cascade>
<cascade-merge/>
</cascade>
</one-to-one>
<one-to-many name="CommDtls" target-entity="com.test.TblCommDtl" mapped-by="tblCommFreq">
<cascade>
<cascade-merge/>
</cascade>
</one-to-many>
</attributes>
</entity>
<!-- WORKED -->
<entity class="com.test.comm">
<table schema="dbo" name="tbl_comm_data"/>
<attributes>
<id name="commId">
<column name="comm_id"/>
</id>
<basic name="commName">
<column name="comm_name"/>
</basic>
<one-to-many name="CommDtls" target-entity="com.test.TblCommDtl" mapped-by="tblCommFreq">
<cascade>
<cascade-merge/>
</cascade>
</one-to-many>
<one-to-one name="CommType" target-entity="com.test.TblCommType" mapped-by="TblComm" fetch="LAZY">
<cascade>
<cascade-merge/>
</cascade>
</one-to-one>
</attributes>
</entity>