Could not get constructor for org.hibernate.persister.entity.SingleTableEntityPersister

0 respostas
G

Olá Boa noite a todos. Pessoal meu aplicativo estava rodando normalmente. Fiquei uns dias sem mexer e quando fui rodar novamente apareceu este erro que não tenho nem ideia do que seja. Alguém poderia me ajudar?

org.hibernate.MappingException: Could not get constructor for org.hibernate.persister.entity.SingleTableEntityPersister
	org.hibernate.persister.internal.PersisterFactoryImpl.create(PersisterFactoryImpl.java:185)
	org.hibernate.persister.internal.PersisterFactoryImpl.createEntityPersister(PersisterFactoryImpl.java:135)
	org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:381)
	org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1744)
	org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1782)
	com.indicibus.utils.HibernateUtil.buildSessionFactory(HibernateUtil.java:13)
	com.indicibus.utils.HibernateUtil.<clinit>(HibernateUtil.java:8)
	com.indicibus.persistence.CategoryPersistence.getCategory(CategoryPersistence.java:43)
	com.indicibus.control.PublishControl.publish(PublishControl.java:101)
	com.indicibus.control.PublishControl.processRequest(PublishControl.java:51)
	com.indicibus.control.PublishControl.doGet(PublishControl.java:56)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
root cause

org.hibernate.InstantiationException: could not instantiate test objectcom.indicibus.model.News
	org.hibernate.engine.internal.UnsavedValueFactory.instantiate(UnsavedValueFactory.java:49)
	org.hibernate.engine.internal.UnsavedValueFactory.getUnsavedIdentifierValue(UnsavedValueFactory.java:68)
	org.hibernate.tuple.PropertyFactory.buildIdentifierProperty(PropertyFactory.java:75)
	org.hibernate.tuple.entity.EntityMetamodel.<init>(EntityMetamodel.java:145)
	org.hibernate.persister.entity.AbstractEntityPersister.<init>(AbstractEntityPersister.java:505)
	org.hibernate.persister.entity.SingleTableEntityPersister.<init>(SingleTableEntityPersister.java:144)
	sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
	sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
	java.lang.reflect.Constructor.newInstance(Unknown Source)
	org.hibernate.persister.internal.PersisterFactoryImpl.create(PersisterFactoryImpl.java:163)
	org.hibernate.persister.internal.PersisterFactoryImpl.createEntityPersister(PersisterFactoryImpl.java:135)
	org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:381)
	org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1744)
	org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1782)
	com.indicibus.utils.HibernateUtil.buildSessionFactory(HibernateUtil.java:13)
	com.indicibus.utils.HibernateUtil.<clinit>(HibernateUtil.java:8)
	com.indicibus.persistence.CategoryPersistence.getCategory(CategoryPersistence.java:43)
	com.indicibus.control.PublishControl.publish(PublishControl.java:101)
	com.indicibus.control.PublishControl.processRequest(PublishControl.java:51)
	com.indicibus.control.PublishControl.doGet(PublishControl.java:56)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

segue as classes…

@Entity
@SequenceGenerator(name = "news_newsid_seq", sequenceName = "news_newsid_seq", 
                   allocationSize = 1, initialValue = 1) 
@Table(name = "NEWS")
public class News implements Serializable{

	@Id
	@Column(name = "NEWSID", unique = true, nullable = false)
	@GeneratedValue(generator="news_newsid_seq")
	private Integer newsId;
	
	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "CATEGORYID", nullable = false)
	private Category category; 	
	    
	
	public News() {
		super();
		this.newsId = 0;
		this.category = new Category();
	}	

	public Integer getNewsId() {
		return newsId;
	}
	
	public void setNewsId(Integer newsId) {
		this.newsId = newsId;
	}	
	
	public Category getCategory() {
		return category;
	}

	public void setCategory(Category category) {
		this.category = category;
	}
}
@Entity
@SequenceGenerator(name = "category_categoryid_seq", 
                   sequenceName = "category_categoryid_seq", 
                   allocationSize = 1, 
                   initialValue = 1) 
@Table(name="CATEGORY")
public class Category implements Serializable, Comparable<Category>{
	
	@Id
	@Column(name = "CATEGORYID", unique = true, nullable = false)
	@GeneratedValue(generator = "category_categoryid_seq")
	private Integer categoryId;
	
	@Column(name = "CATEGORYNAME", nullable = false, length = 100)
	private String name;
	
	@OneToMany(fetch = FetchType.LAZY, mappedBy = "category")
	private List<News> news;
	
	public Category() {
		super();
		this.categoryId = 0;
		this.name = "";
		this.news = new ArrayList<News>();
	}	
	public Integer getCategoryId() {
		return categoryId;
	}

	public void setCategoryId(int categoryId) {
		this.categoryId = categoryId;
	}	
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}	
	public List<News> getNews() {
		return news;
	}

	public void setNews(List<News> news) {
		this.news = news;
	}
	@Override
	public int compareTo(Category category) {
		return name.compareTo(category.name);
	}
}

O problema ocorre quando tento buscar uma “Category” no banco de dados.
Desde já agradeço.

Criado 2 de setembro de 2012
Respostas 0
Participantes 1