【发布时间】:2012-02-15 23:34:26
【问题描述】:
我创建了一个 hbm.xml 文件,但它给了我一个错误:
元素类型“class”的内容必须匹配“(meta*,subselect?,cache?,synchronize*,comment?,tuplizer*,(id|composite-id),discriminator?,natural-id?,(版本|时间戳)?,(属性|多对一|一对一|组件|动态组件|属性|任何|地图|集合|列表|袋|idbag|数组|原始数组) ,((join,subclass*)|joined-subclass*|union-subclass*),loader?,sql-insert?,sql-update?,sql-delete?,filter*,resultset*,(query |sql-query)*)"。
代码如下:
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
<class name="edu.byu.training.domain.ProductFlsko" table="PRODUCTFLSKO" schema="GAATTRAINING">
<property name="productId" column="PRODUCT_ID"/>
<property name="product" column="PRODUCT"/>
<property name="description" column="DESCRIPTION"/>
<property name="price" column="PRICE"/>
<property name="rowNumber" column="ROW_NUMBER"/>
<query name="get.By.Id" cacheable="true">
select ProductFlsko
from edu.byu.training.domain.ProductFlsko prod
where prod.productId = :id
</query>
</class>
</hibernate-mapping>
我这辈子都想不通……
【问题讨论】:
-
我的
xml也有同样的错误。但我的问题是我有 2 个<ID>标签。删除其中一个并解决了问题。认为这对面临同样问题的其他人会很有用。