• [Hibernate]xDoclet生成hbm的一个bug


    做示范中心项目时遇到的,类Teacher实现接口BusinessObject,在接口里用@hibernate.class,在类里用@hibernate.joined-subclass-key column="oid"和@hibernate.joined-subclass,执行ant任务时只生成了BusinessObject.hbm.xml,而且在里面没有关于Teacher的定义。为此折腾了好一阵,后在在网上找到一个贴子说的是同一个问题,还提供了一个patch,不过还没试好不好使,内容如下。(快该回家了,晚上继续写)

    diff --1 ---r1.20 HibernateTagsHandler.java
    --- HibernateTagsHandler.java   14 Jun 2003 13:58:10 -0000      1.20
    +++ HibernateTagsHandler.java   3 Nov 2003 00:58:27 -0000
    @@ 
    -285,3 +285,7 @@ public class HibernateTagsHandler
                     }
    -                else if (clazz.getSuperclass() != null && clazz.getSuperclass().getQualifiedName().equals(typeName)) {
    +                else if ((clazz.getSuperclass() != null &&
    +                    clazz.getSuperclass().getQualifiedName().equals(typeName))
    +                    ||
    +                    (getCurrentClass().isInterface() &&
    +                    clazz.isImplementingInterface(typeName))) {
                         log.debug(
    "is a subclass");

    现在决定不用这个patch的方法了,改源码得重新build,而且以后就不能用通用包了。暂时拿抽象类代替接口吧,差不多。

  • 相关阅读:
    NHibernate 3 查询APIQueryOver
    Fluent NHibernate
    SQLite3创建数据库的方法
    Angularjs中provider,factory和service的不同
    windows 8 修改窗口颜色为淡绿色
    Resharper6.0如何启用原VS的中文智能提示
    Sublime Text 3 绝对神器
    华山论剑,博客园武林人士
    洛谷 P2152 [SDOI2009]SuperGCD
    洛谷 P1282 多米诺骨牌
  • 原文地址:https://www.cnblogs.com/bjzhanghao/p/33157.html
Copyright © 2020-2023  润新知