1

我想在我的 Hibernate 映射中使用 XML 实体

这是我的文件结构:

/types/convertible-car.hbm.xml
/xml-entites/registration.xml

映射文件convertible-car.hbm.xml如下所示:

<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE hibernate-mapping SYSTEM 
    "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd" 
    [!ENTITY registration SYSTEM "../xml-entities/registration.xml"]>

<hibernate-mapping package="…">
    // …
    &registration;    
    // …
</hibernate-mapping>

XML 实体registration文件中定义registration.xml。不幸的是,在 Eclipse 中验证 Hibernate 映射文件时出现此错误:

文档类型声明包含或指向的标记声明必须格式正确。

我猜这个错误是由解析器找不到registration.xml文件引起的。你知道我如何嵌入一个具有相对路径的实体吗?

4

1 回答 1

1

您的实体声明错误。尝试这个:

<!DOCTYPE hibernate-mapping SYSTEM "http://hibernate.sourceforge.net/hibernate-mapping-.0.dtd" [
<!ENTITY registration SYSTEM "../xml-entities/registration.xml">
]>
<hibernate-mapping package="…">
    // …
    &registration;    
    // …
</hibernate-mapping>
于 2012-04-10T14:19:18.443 回答