hibernate3在weblogic8上部署出现的奇怪问题

原来的一个在weblogic9上运行很正常的项目,框架采用的是spring2+hibernate3+struts1.2。在迁移到weblogic8.15的是出现了一个奇怪的hibernate映射问题。
比如我的HQL如下:
[code]String hql=" from JstgLjdm where jstgLjdmId='11'";[/code]
JstgLjdm 是表jtsg_ljdm的映射,jstgLjdmId 是字段jtsg_ljdm_id的映射。
可是在执行的时候却报jstgLjdmId 无效的标识符。查看输出的sql语句为:
[code]select XX字段 from JSTG_LJDM jstgljdm0_ where (jstgLjdmId='11' )[/code]
即JstgLjdm 已经能够翻译成表JSTG_LJDM,但是jstgLjdmId却没有能够翻译成jtsg_ljdm_id.
我确认hibernate映射文件没有问题。
如果我把我的HQL写成如下:
[code]String hql=" from JstgLjdm where jstg_Ljdm_Id='11'";[/code]
执行就是完全正确的。

不知道是什么原因,请哪位有经验的人士指点一下。
说明一下:
我执行HQL用的是这个方法。
[code]Query query = getSession().createQuery(hql);
list = query.list();[/code]
并且hiberante3在weblogic8上部署要解决antlr.jar的问题,我已经通过在hibernate.properties文件中增加属性:hibernate.query.factory_class,属性的值是org.hibernate.hql.classic.ClassicQueryTranslatorFactory的方法解决问题了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值