论坛首页 Java企业应用论坛

关于<subclass>的问题 已经解决了, 谢谢yehs220版主

浏览 2987 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2003-12-23  
我定义了一个company 和 childcompany 的继承关系。
跟Hibernate文档上的例子 几乎一样 就是换了几个名字。
可就是不行。
代码如下
跟父类没什么关系,就不贴了
子类
childcompany.java

public class ChildCompany extends Company {
private String childCompanyName;

public String getChildCompanyName() {
return childCompanyName;
}

public void setChildCompanyName(String string) {
childCompanyName = string;
}

}

company。hbm。xml文件


<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 2.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-2.0.dtd">
<hibernate-mapping>

<class name="com.raykey.murle.test.Company" table="company">
<id name="companyID"
      column="company_id"
      length="128">
   
                    <generator class="uuid.hex"/>

                </id>

<property name="companyName"
column="company_name">
</property>

<joined-subclass 
name="com.raykey.murle.test.ChildCompany" table="child_company">
     
                      <key column="company"/>
    
                      <property name="childCompanyName"
       type="string"/>

                      </joined-subclass>

<set name="employees"
        table="employee"
        lazy="true"
        cascade="all">
<key column="company_id"/>
                <one-to-many class="com.raykey.murle.test.Employee"/>
</set>

   </class>

</hibernate-mapping>


出错信息如下
严重: Error parsing XML: XML InputStream(38) The content of element type "class" must match "(meta*,(cache|jcs-cache)?,(id|composite-id),discriminator?,(version|timestamp)?,(property|many-to-one|one-to-one|component|dynamic-component|any|map|set|list|bag|idbag|array|primitive-array)*,(subclass*|joined-subclass*))".
2003-12-23 11:52:56 net.sf.hibernate.cfg.Binder bindRootClass
信息: Mapping class: com.raykey.murle.test.Company -> company
2003-12-23 11:52:56 net.sf.hibernate.cfg.Configuration add
严重: Could not compile the mapping document
net.sf.hibernate.MappingException: Could not interpret type: charactor
at net.sf.hibernate.cfg.Binder.getTypeFromXML(Binder.java:841)
at net.sf.hibernate.cfg.Binder.bindSimpleValue(Binder.java:372)
at net.sf.hibernate.cfg.Binder.bindRootClass(Binder.java:299)
at net.sf.hibernate.cfg.Binder.bindRoot(Binder.java:1173)
at net.sf.hibernate.cfg.Configuration.add(Configuration.java:245)
at net.sf.hibernate.cfg.Configuration.addInputStream(Configuration.java:268)
at net.sf.hibernate.cfg.Configuration.addClass(Configuration.java:309)
at com.raykey.murle.test.Test.<clinit>(Test.java:41)
net.sf.hibernate.MappingException: Error reading resource: com/raykey/murle/test/Company.hbm.xml
at net.sf.hibernate.cfg.Configuration.addClass(Configuration.java:312)
at com.raykey.murle.test.Test.<clinit>(Test.java:41)
Caused by: net.sf.hibernate.MappingException: Could not interpret type: charactor
at net.sf.hibernate.cfg.Binder.getTypeFromXML(Binder.java:841)
at net.sf.hibernate.cfg.Binder.bindSimpleValue(Binder.java:372)
at net.sf.hibernate.cfg.Binder.bindRootClass(Binder.java:299)
at net.sf.hibernate.cfg.Binder.bindRoot(Binder.java:1173)
at net.sf.hibernate.cfg.Configuration.add(Configuration.java:245)
at net.sf.hibernate.cfg.Configuration.addInputStream(Configuration.java:268)
at net.sf.hibernate.cfg.Configuration.addClass(Configuration.java:309)
... 1 more
java.lang.NullPointerException
at com.raykey.murle.test.Test.main(Test.java:73)
Exception in thread "main"
   发表时间:2003-12-23  
这些错误信息已经相当清楚了。
0 请登录后投票
   发表时间:2003-12-23  
错误信息好像是说 我的element写错了 可是我看了半天也没看出来
0 请登录后投票
   发表时间:2003-12-23  
一上午什么都没干
  就是找不出来,可能旁观者清 帮忙看一下吧
0 请登录后投票
   发表时间:2003-12-23  
joined-subclass放在set之后
0 请登录后投票
   发表时间:2003-12-23  
那个 charactor 属性 是我用 <subclass>的时候加上的
后来我用<joined-class>的时候已经给删了
我觉得关键是上面的那个 class 那里的错误
0 请登录后投票
   发表时间:2003-12-23  
yehs220  我太爱你了 
  不过为什么有这个规定?????????
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics