Java 错误:无法获取org.hibernate.persister.entity.SingleTableEntityPersister的构造函数,并且找不到属性的getter方法

Java 错误:无法获取org.hibernate.persister.entity.SingleTableEntityPersister的构造函数,并且找不到属性的getter方法,java,xml,hibernate,Java,Xml,Hibernate,我已经检查了我的pojo类,但找不到错误。谁能帮忙吗。下面是类以及映射和配置文件 我试图在专利和发明者之间建立一种一对多的关系。下面的错误经常弹出。这次我无法解决它 public class Inventor { private int id; private String inventor; private Patent pat; public Inventor() { // TODO Auto-generated constructor stub }

我已经检查了我的pojo类,但找不到错误。谁能帮忙吗。下面是类以及映射和配置文件

我试图在专利和发明者之间建立一种一对多的关系。下面的错误经常弹出。这次我无法解决它

public class Inventor {

private int id;
private String inventor;
private Patent pat;

    public Inventor() {
        // TODO Auto-generated constructor stub
    }
    public int getId() {
        return id;
    }
    public String getInventor() {
        return inventor;
    }
    public Patent getPat() {
        return pat;
    }
    public void setId(int id) {
        this.id = id;
    }
    public void setInventor(String inventor) {
        this.inventor = inventor;
    }
    public void setPat(Patent pat) {
        this.pat = pat;
    }
    public Inventor(String inventor, Patent pat) {
        // TODO Auto-generated constructor stub
        this.inventor=inventor;
        this.pat=pat;
    }
    public Inventor(int id,String inventor, Patent pat) {
        // TODO Auto-generated constructor stub
        this.id=id;
        this.inventor=inventor;
        this.pat=pat;
    }
public class Patent  {

private int id;
private String application_doc_num;
private String application_date;
private String application_country;
private String publication_doc_num;
private String publication_date;
private String publication_country;
private String publication_kind;
private String patent_no;
private String Assignee;
private String Examiner;
private String Agent;
private String Doc_identifier;
private Set<Inventor> inventors=new HashSet<Inventor>();

public Set<Inventor> getInventors() {
    return inventors;
}
public void setInventors(Set<Inventor> inventors) {
    this.inventors = inventors;
}
public Patent(int id, String Doc_identifier,String publication_date) {

    this.id=id;
    this.Doc_identifier=Doc_identifier;
    this.publication_date=publication_date;

}
public void setPatent_no(String patent_no) {
    this.patent_no = patent_no;
}
public void setPublication_country(String publication_country) {
    this.publication_country = publication_country;
}
public void setPublication_date(String publication_date) {
    this.publication_date = publication_date;
}
public void setPublication_doc_num(String publication_doc_num) {
    this.publication_doc_num = publication_doc_num;
}
public void setApplication_country(String application_country) {
    this.application_country = application_country;
}
public void setApplication_date(String application_date) {
    this.application_date = application_date;
}
public void setApplication_doc_num(String application_doc_num) {
    this.application_doc_num = application_doc_num;
}
public String getPatent_no() {
    return patent_no;
}
public String getPublication_country() {
    return publication_country;
}
public String getPublication_date() {
    return publication_date;
}
public String getPublication_doc_num() {
    return publication_doc_num;
}
public String getApplication_country() {
    return application_country;
}
public String getApplication_date() {
    return application_date;
}
public String getApplication_doc_num() {
    return application_doc_num;
}
public Patent( String Doc_identifier,String publication_date) {

    this.Doc_identifier=Doc_identifier;
    this.publication_date=publication_date; 
}

public Patent() {

}
public int getId() {
    return id;
}
public void setId(int id) {
    this.id = id;
}
public String getDoc_identifier() {
    return Doc_identifier;
}
public void setDoc_identifier(String doc_identifier) {
    Doc_identifier = doc_identifier;
}
public String getPublication_kind() {
    return publication_kind;
}
public void setPublication_kind(String publication_kind) {
    this.publication_kind = publication_kind;
}

public String getAgent() {
    return Agent;
}
public String getExaminer() {
    return Examiner;
}
public void setAgent(String agent) {
    Agent = agent;
}
public void setExaminer(String examiner) {
    Examiner = examiner;
}
public String getAssignee() {
    return Assignee;
}
public void setAssignee(String assignee) {
    Assignee = assignee;
}
}

    **Config file**

 <?xml version="1.0" encoding="utf-8"?>
 <!DOCTYPE hibernate-configuration SYSTEM 
 "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">

 <hibernate-configuration>
 <session-factory>
 <property name="hibernate.dialect">
  org.hibernate.dialect.OracleDialect
  </property>
  <property name="hibernate.connection.driver_class">
  oracle.jdbc.driver.OracleDriver
  </property>

  <!-- Assume test is the database name -->
  <property name="hibernate.connection.url">
  jdbc:oracle:thin:@localhost:1521:xe
  </property>
  <property name="hibernate.connection.username">
  system
  </property>
  <property name="hibernate.connection.password">
  ****
  </property>

  <!-- List of XML mapping files -->
  <mapping resource="Patent.hbm.xml"/>
  <mapping resource="Inventor.hbm.xml"/>


   </session-factory> 
  </hibernate-configuration>

   <?xml version="1.0" encoding="utf-8"?>
   <!DOCTYPE hibernate-mapping PUBLIC 
   "-//Hibernate/Hibernate Mapping DTD//EN"
   "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd"> 

    **Mapping files**

    <hibernate-mapping>
    <class name="com.stax.Patent" table="system.PATENT">
    <meta attribute="class-description">
     This class contains the patent detail. 
     </meta>
     <id name="id" type="int" column="pat_id">
     <generator class="native"/>
     </id>
     <set name="inventors" inverse="true" cascade="all">
     <key column="inv_pat_id" />
     <one-to-many class="com.stax.Inventor"/>
     </set>
     <property name="Doc_identifier" column="pat_doc_identifier"             type="string"/>
   <property name="publication_date" column="pat_date" type="string"/>
     </class>
     </hibernate-mapping>

     <?xml version="1.0" encoding="UTF-8"?>
     <!DOCTYPE hibernate-mapping PUBLIC
    "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
    "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
     <hibernate-mapping >
     <class name="com.stax.Inventor" table="system.INVENTOR">
    <meta attribute="class-description">
     This class contains the inventor records. 
     </meta>
    <id name="id" column="inv_id" type="int">
        <generator class="native"/>
    </id>
    <property name="inventor" column="inv_inventor" type="string"/>
    <many-to-one name="patent" class="com.stax.Inventor"
        column="inv_pat_id" />
     </class> 
    </hibernate-mapping>
公共类Inventor{
私有int-id;
私人字符串发明者;
私人专利;
公共发明人(){
//TODO自动生成的构造函数存根
}
公共int getId(){
返回id;
}
公共字符串getInventor(){
返回发明人;
}
公共专利{
回击;
}
公共无效集合id(内部id){
this.id=id;
}
公共void setInventor(字符串inventor){
this.inventor=inventor;
}
公共无效setPat(专利pat){
this.pat=pat;
}
公共发明人(字符串发明人,专利pat){
//TODO自动生成的构造函数存根
this.inventor=inventor;
这个.pat=pat;
}
公共发明人(int id、字符串发明人、专利pat){
//TODO自动生成的构造函数存根
这个.id=id;
this.inventor=inventor;
这个.pat=pat;
}
公共类专利{
私有int-id;
私有字符串应用程序\u doc\u num;
私有字符串应用程序\u日期;
国家/地区的私人字符串应用程序;
私有字符串发布\u doc\u num;
私有字符串发布日期;
国家私人字符串出版物;
私有字符串类型;
私有字符串专利号;
私人字符串受让人;
私人验线员;
私有字符串代理;
私有字符串文档标识符;
私有集合发明者=新HashSet();
公共集合getInventors(){
返回发明人;
}
公共无效集合发明人(集合发明人){
本发明者=发明者;
}
公共专利(int id、字符串文档标识符、字符串发布日期){
这个.id=id;
此.Doc\u标识符=Doc\u标识符;
this.publication\u date=publication\u date;
}
公共无效设置专利号(字符串专利号){
this.patent\u no=专利号;
}
public void setPublication\u country(字符串publication\u country){
this.publication\u country=publication\u country;
}
公共作废设置发布日期(字符串发布日期){
this.publication\u date=publication\u date;
}
public void setPublication\u doc\u num(字符串publication\u doc\u num){
this.publication\u doc\u num=publication\u doc\u num;
}
公共无效设置应用程序\国家/地区(字符串应用程序\国家/地区){
this.application\u country=application\u country;
}
公共作废设置应用程序日期(字符串应用程序日期){
this.application\u date=申请日期;
}
public void setApplication\u doc\u num(字符串application\u doc\u num){
this.application\u doc\u num=application\u doc\u num;
}
公共字符串getPatent_no(){
返回专利号;
}
公共字符串getPublication\u country(){
返回美国;
}
公共字符串getPublication_date(){
返回发布日期;
}
公共字符串getPublication\u doc\u num(){
返回出版物\文档\编号;
}
公共字符串getApplication_country(){
返回申请国;
}
公共字符串getApplication_date(){
返回申请日期;
}
公共字符串getApplication\u doc\u num(){
退货申请单\单据\编号;
}
公共专利(字符串文档标识符、字符串发布日期){
此.Doc\u标识符=Doc\u标识符;
this.publication\u date=publication\u date;
}
公共专利(){
}
公共int getId(){
返回id;
}
公共无效集合id(内部id){
this.id=id;
}
公共字符串getDoc_标识符(){
返回单据标识;
}
公共无效设置文档标识符(字符串文档标识符){
单据标识符=单据标识符;
}
公共字符串getPublication_kind(){
返回出版物或实物;
}
公共发布类型(字符串发布类型){
this.publication\u kind=publication\u kind;
}
公共字符串getAgent(){
退货代理;
}
公共字符串getTester(){
报税审查员;
}
公共无效设置代理(字符串代理){
代理=代理;
}
公开审查员(字符串审查员){
审查员=审查员;
}
公共字符串getAssignment(){
返还受让人;
}
公共无效集合受让人(字符串受让人){
受让人=受让人;
}
}
**配置文件**
org.hibernate.dialen.oraclealent
oracle.jdbc.driver.OracleDriver
jdbc:oracle:thin:@localhost:1521:xe
系统
****
**映射文件**
此类包含专利详细信息。
此类包含inventor记录。