JiveJdon Community Forums
在线345人   首页   主题表   培训咨询   标签   精华   查搜   注册    登陆 RSS
首页 » 论坛 » 设计模式、框架和架构
???en_US.forumThreadPrev.name??? 上一主题
  Go back to the topic 返回本主题   Go back to the topic listing返回主题列表
???en_US.forumThreadNext.name??? 下一主题
Go 总共有 2 回复 / 1
 发表新帖子   回复该主题贴
jacky198210

悄悄话
发表文章: 2
注册时间: 2004年06月25日 11:54
spring+Hibernate执行时出错,各位大哥帮忙啊!!!!!!!!!!!!!!!!!!! 2004年06月25日 11:57 到本帖网址 加入本帖到收藏夹 发送到手机 回复该主题
标签列表
我想得到表T_Bidding_QuestAndAnswerAnnex的全部字段、表T_Base_Project部分字段 内容
(我用了引用project对象,"many-to-one";而事实上我只需要project.projectname一个字段,不知道该怎么做,只好
包函它的全部内容了!),在执行:list("AHPTC-2004-107", 174) 测试时出错了?????????????

LOG信息如下:
--------------->1
Hibernate: select top 10 questandan0_.id as id0_, project1_.projectid as projectid1_, questandan0_.projectid as projectid0_, questandan0_.enterpriseid as enterpri3_0_, questandan0_.filename as filename0_, questandan0_.memo as memo0_, questandan0_.state as state0_, questandan0_.oldfilename as oldfilen7_0_, questandan0_.uploadtime as uploadtime0_, project1_.projectcode as projectc2_1_, project1_.projectname as projectn3_1_, project1_.projectcontent as projectc4_1_, project1_.enterpriseid as enterpri5_1_, project1_.employeeid as employeeid1_, project1_.projecttype as projectt7_1_, project1_.projectmode as projectm8_1_, project1_.chargemode as chargemode1_, project1_.sum as sum1_, project1_.biddingdate as bidding11_1_, project1_.biddingtime as bidding12_1_, project1_.projectintroduce as project13_1_, project1_.state as state1_, project1_.loginname as loginname1_, project1_.password as password1_, project1_.memo as memo1_, project1_.recorderdate as recorde18_1_, project1_.isdispartment as isdispa19_1_ from T_Bidding_QuestAndAnswerAnnex questandan0_ inner join T_Base_Project project1_ on questandan0_.projectid=project1_.projectid where (project1_.projectcode=? ) order by questandan0_.projectid
net.sf.hibernate.PropertyAccessException: exception setting property value with CGLIB (set Hibernate.cglib.use_reflection_optimizer=false for more info) setter of com.ahptc.bo.Project.setSum
at net.sf.hibernate.persister.AbstractEntityPersister.setPropertyValues(AbstractEntityPersister.java:212)
at net.sf.hibernate.impl.SessionImpl.initializeEntity(SessionImpl.java:2199)
at net.sf.hibernate.loader.Loader.doQuery(Loader.java:240)
at net.sf.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:133)
at net.sf.hibernate.loader.Loader.doList(Loader.java:955)
at net.sf.hibernate.loader.Loader.list(Loader.java:946)
at net.sf.hibernate.hql.QueryTranslator.list(QueryTranslator.java:834)
at net.sf.hibernate.impl.SessionImpl.find(SessionImpl.java:1536)
at net.sf.hibernate.impl.QueryImpl.list(QueryImpl.java:39)
at com.ahptc.service.dao.hibernate.QuestAnnexHibernateDAO$1.doInHibernate(QuestAnnexHibernateDAO.java:64)
at org.springframework.orm.hibernate.HibernateTemplate.execute(HibernateTemplate.java:150)
at org.springframework.orm.hibernate.HibernateTemplate.executeFind(HibernateTemplate.java:170)
at com.ahptc.service.dao.hibernate.QuestAnnexHibernateDAO.list(QuestAnnexHibernateDAO.java:43)
at com.ahptc.action.DownQuestionAction.execute(DownQuestionAction.java:57)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:484)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:507)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:743)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:284)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:204)
at com.ahptc.tp.servlet.EncodeFilter.doFilter(EncodeFilter.java:61)
..............................

相关代码贴出如下:

这是执行的代码QuestAnnexHibernateDAO:
public List list(final String projectCode, final int enterpriseId) {
sb.append("from bo.QuestAndAnswerAnnex annex ");
sb.append("join annex.project as project ");
sb.append("where annex.project.projectcode = :projectcode ");
sb.append("order by annex.projectid");
Query query = session.createQuery(sb.toString());
query.setString("projectcode", projectCode);
System.out.println(" --------------->1 "+);
List list=null;
try{
list = query.list();
}catch(Exception e){
e.printStackTrace();
}
//session.close();
System.out.println("--------------->>>>>> "+list.size());
return list;
}
});
}

以下是Spring配置文件applicationContext-hibernate.xml:
...
<property name="mappingResources">
<list>
<value>bo/QuestAndAnswerAnnex.hbm.xml</value>
<value>bo/Project.hbm.xml</value>
</list>
</property>
...
<bean id="questAnnexDAO" class="dao.hibernate.QuestAnnexHibernateDAO">
<property name="sessionFactory"><ref local="mySessionFactory"/></property>
</bean>

以下是QuestAndAnswerAnnex.java文件内容:
public class QuestAndAnswerAnnex implements Serializable {
...
private Project project;
...
}

以下是Project.java文件内容:
public class Project implements Serializable {
...
private Set questAnnex= new HashSet();
...
}

以下是QuestAndAnswerAnnex.hbm.xml文件内容:
<hibernate-mapping>
<class name="bo.QuestAndAnswerAnnex" table="T_Bidding_QuestAndAnswerAnnex">
<composite-id >
<key-property name="projectid" column="projectid" type="integer" length="4"/>
<key-property name="enterpriseid" column="enterpriseid" type="integer" length="4"/>
</composite-id>
<property name="filename" column="filename" type="string" length="100"/>
...
<property name="id" column="id" type="integer" length="4" not-null="true"/>
<many-to-one
name="project"
class="bo.Project"
cascade="none"
outer-join="auto"
update="false"
insert="false"
column="projectid"
/>
</class>
</hibernate-mapping>

以下是Project.hbm.xml文件内容:
<hibernate-mapping>
<class name="bo.Project" table="T_Base_Project">
<id name="projectid" column="projectid" type="integer" length="4">
<generator class="uuid.hex"/>
</id>
<property name="projectcode" column="projectcode" type="string" length="100"/>
<property name="projectname" column="projectname" type="string" length="500" not-null="true"/>
<property name="enterpriseid" column="enterpriseid" type="string" length="500"/>
<property name="projectintroduce" column="projectintroduce" type="serializable"/> //type="serializable"此对应的是表中text类型
...
<set name="questAnnex" inverse="true" lazy="true" cascade="all">
<key column="projectid"/>
<one-to-many class="bo.QuestAndAnswerAnnex"/>
</set>
</class>
</hibernate-mapping>
jacky198210

悄悄话
发表文章: 2
注册时间: 2004年06月25日 11:54
Re: spring+Hibernate执行时出错,各位大哥帮忙啊!!!!!!!!!!!!!!!!!!! 2004年06月25日 12:27 到本帖网址 加入本帖到收藏夹 发送到手机 回复该主题
怎么XML标签不能贴上去啊????????
banq

悄悄话
发表文章: 9484
注册时间: 2002年08月03日 17:08
Re: spring+Hibernate执行时出错,各位大哥帮忙啊!!!!!!!!!!!!!!!!!!! 2004年06月27日 18:49 到本帖网址 加入本帖到收藏夹 发送到手机 回复该主题
代码需要选择Code按钮。

从这个报错来看:Spring+Hibernate 并不比Sesssion Bean+CMP简单多,实际上,面向应用的技术简单化没有很大差别,没有银弹啊。
这个主题有 2 回复 / 1Go
???en_US.forumThreadPrev.name??? 上一主题
  Go back to the topic 返回本主题   Go back to the topic listing返回主题列表    返回页首返回页首
???en_US.forumThreadNext.name??? 下一主题
热点TAG: AOP cache 缓存 DDD EJB 集群 设计模式 Hibernate IOC JiveJdon OO RBAC Seam Spring Struts
正在读取,请等待...
google yahoo 新浪ViVi 365Key网摘 天极网摘 CSDN网摘 添加到百度搜藏 POCO网摘 博采网摘
查询本论坛内 回复超过的热门帖子
     回复该主题贴
标题
 
粗体 斜体 下划线 插入图片 插入代码 插入url链接 插入附件
内容
  发贴前查询 标签列表勿重复发表问题

RSS 手机阅读 add to google add to yahoo
解惑之道在J道 ,打造中国最具影响力的的企业软件社区
OpenSource JIVEJDON v3.0 Powered by JdonFramework Code © 2002-08 jdon.com
anti spam