本来我的sql表是没设置外键的,运行正常。后来设置了外键,关联了几个表再来生成一次hibernate,改动自己的相关文件后就发生了下面的错误。
帮帮忙哈,小弟在此谢过了。。
hibernate生成的类:package com.file.vo;import java.util.Date;
import java.util.HashSet;
import java.util.Set;/**
 * FileBasicInformation generated by MyEclipse Persistence Tools
 */public class FileBasicInformation implements java.io.Serializable { // Fields /**
 * 
 */
private static final long serialVersionUID = 1L;
private Integer number;
private String address;
private String telephone;
private String name;
private String canton;
private String station;
private String doctor;
private String buildMan;
private Date buildDate;
private Set longHealthProblems = new HashSet<Object>(0);
private Set<Object> nameNumbers = new HashSet<Object>(0);
private Set<Object> personBasicInformations = new HashSet<Object>(0); // Constructors /** default constructor */
public FileBasicInformation() {
} /** full constructor */
public FileBasicInformation(String address, String telephone, String name,
String canton, String station, String doctor, String buildMan,
Date buildDate, Set<Object> longHealthProblems, Set<Object> nameNumbers,
Set<Object> personBasicInformations) {
this.address = address;
this.telephone = telephone;
this.name = name;
this.canton = canton;
this.station = station;
this.doctor = doctor;
this.buildMan = buildMan;
this.buildDate = buildDate;
this.longHealthProblems = longHealthProblems;
this.nameNumbers = nameNumbers;
this.personBasicInformations = personBasicInformations;
} // Property accessors public Integer getNumber() {
return this.number;
} public void setNumber(Integer number) {
this.number = number;
} public String getAddress() {
return this.address;
} public void setAddress(String address) {
this.address = address;
} public String getTelephone() {
return this.telephone;
} public void setTelephone(String telephone) {
this.telephone = telephone;
} public String getName() {
return this.name;
} public void setName(String name) {
this.name = name;
} public String getCanton() {
return this.canton;
} public void setCanton(String canton) {
this.canton = canton;
} public String getStation() {
return this.station;
} public void setStation(String station) {
this.station = station;
} public String getDoctor() {
return this.doctor;
} public void setDoctor(String doctor) {
this.doctor = doctor;
} public String getBuildMan() {
return this.buildMan;
} public void setBuildMan(String buildMan) {
this.buildMan = buildMan;
} public Date getBuildDate() {
return this.buildDate;
} public void setBuildDate(Date buildDate) {
this.buildDate = buildDate;
} public Set<Object> getLongHealthProblems() {
return this.longHealthProblems;
} public void setLongHealthProblems(Set<Object> longHealthProblems) {
this.longHealthProblems = longHealthProblems;
} public Set<Object> getNameNumbers() {
return this.nameNumbers;
} public void setNameNumbers(Set<Object> nameNumbers) {
this.nameNumbers = nameNumbers;
} public Set<Object> getPersonBasicInformations() {
return this.personBasicInformations;
} public void setPersonBasicInformations(Set<Object> personBasicInformations) {
this.personBasicInformations = personBasicInformations;
}}
本来应该是Set的,IDE报警告,把它们都改为Set<Object>..
找过网上的资料说是eclipse版本问题,但是实在不知道该怎么弄。给位大虾帮帮忙哈、、、

解决方案 »

  1.   

    log4j里的错误信息:2009-04-20 22:47:53 ERROR [/File]:678 - action: null
     org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactory' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Invocation of init method failed; nested exception is org.hibernate.MappingException: Association references unmapped class: com.file.vo.LongHealthProblem
    Caused by: 
    org.hibernate.MappingException: Association references unmapped class: com.file.vo.LongHealthProblem
    at org.hibernate.cfg.HbmBinder.bindCollectionSecondPass(HbmBinder.java:2344)
    at org.hibernate.cfg.HbmBinder$CollectionSecondPass.secondPass(HbmBinder.java:2618)
    at org.hibernate.cfg.CollectionSecondPass.doSecondPass(CollectionSecondPass.java:35)
    at org.hibernate.cfg.Configuration.secondPassCompile(Configuration.java:1012)
    at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1168)
    at org.springframework.orm.hibernate3.LocalSessionFactoryBean.newSessionFactory(LocalSessionFactoryBean.java:805)
    at org.springframework.orm.hibernate3.LocalSessionFactoryBean.buildSessionFactory(LocalSessionFactoryBean.java:745)
    at org.springframework.orm.hibernate3.AbstractSessionFactoryBean.afterPropertiesSet(AbstractSessionFactoryBean.java:134)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1202)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1172)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:428)
    at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:251)
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:156)
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:248)
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:160)
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:284)
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:352)
    at org.springframework.web.struts.ContextLoaderPlugIn.createWebApplicationContext(ContextLoaderPlugIn.java:355)
    at org.springframework.web.struts.ContextLoaderPlugIn.initWebApplicationContext(ContextLoaderPlugIn.java:296)
    at org.springframework.web.struts.ContextLoaderPlugIn.init(ContextLoaderPlugIn.java:225)
    at org.apache.struts.action.ActionServlet.initModulePlugIns(ActionServlet.java:869)
    at org.apache.struts.action.ActionServlet.init(ActionServlet.java:336)
    at javax.servlet.GenericServlet.init(GenericServlet.java:212)
    at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1139)
    at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:966)
    at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:3956)
    at org.apache.catalina.core.StandardContext.start(StandardContext.java:4230)
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:760)
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:740)
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:544)
    at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:927)
    at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:890)
    at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492)
    at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1150)
    at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
    at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:120)
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1022)
    at org.apache.catalina.core.StandardHost.start(StandardHost.java:736)
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1014)
    at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
    at org.apache.catalina.core.StandardService.start(StandardService.java:448)
    at org.apache.catalina.core.StandardServer.start(StandardServer.java:700)
    at org.apache.catalina.startup.Catalina.start(Catalina.java:552)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:295)
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:433)
    2009-04-20 22:47:53  INFO [/File]:649 - Marking servlet action as unavailable
     2009-04-20 22:47:53 ERROR [/File]:3958 - Servlet /File threw load() exception
     javax.servlet.UnavailableException
    at org.apache.struts.action.ActionServlet.initModulePlugIns(ActionServlet.java:880)
    at org.apache.struts.action.ActionServlet.init(ActionServlet.java:336)
    at javax.servlet.GenericServlet.init(GenericServlet.java:212)
    at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1139)
    at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:966)
    at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:3956)
    at org.apache.catalina.core.StandardContext.start(StandardContext.java:4230)
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:760)
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:740)
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:544)
    at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:927)
    at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:890)
    at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492)
    at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1150)
    at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
    at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:120)
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1022)
    at org.apache.catalina.core.StandardHost.start(StandardHost.java:736)
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1014)
    at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
    at org.apache.catalina.core.StandardService.start(StandardService.java:448)
    at org.apache.catalina.core.StandardServer.start(StandardServer.java:700)
    at org.apache.catalina.startup.Catalina.start(Catalina.java:552)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:295)
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:433)
    2009-04-20 22:47:53 DEBUG JspRuntimeContext:103 - Parent class loader is: WebappClassLoader
      delegate: false
      repositories:
        /WEB-INF/classes/
    ----------> Parent Classloader:
    org.apache.catalina.loader.StandardClassLoader@e79839
      

  2.   

     com.file.vo.LongHealthProblem 你的MAPPING file里有没有这个映射到这个文件?
    如果你是用的hibernate的工具自动生成的JAVA BEAN应该不会出现这种问题的