Erro aplicação para web

6 respostas
A

boa noite pessoal, so iniciante na programação de javaweb, e gostaria de ajuda, nao consigo encontrar a solução para este erro
eu estou tentando cadastrar um disco com musicas

HTTP Status 500 - javax.persistence.PersistenceException: [PersistenceUnit: fonograma] Unable to build EntityManagerFactory

type Exception report

message javax.persistence.PersistenceException: [PersistenceUnit: fonograma] Unable to build EntityManagerFactory

description The server encountered an internal error (javax.persistence.PersistenceException: [PersistenceUnit: fonograma] Unable to build EntityManagerFactory) that prevented it from fulfilling this request.

exception

javax.servlet.ServletException: javax.persistence.PersistenceException: [PersistenceUnit: fonograma] Unable to build EntityManagerFactory
javax.faces.webapp.FacesServlet.service(FacesServlet.java:521)
root cause

javax.faces.el.EvaluationException: javax.persistence.PersistenceException: [PersistenceUnit: fonograma] Unable to build EntityManagerFactory

javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:102)

com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:102)

javax.faces.component.UICommand.broadcast(UICommand.java:315)

javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:787)

javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1252)

com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:81)

com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)

com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)

javax.faces.webapp.FacesServlet.service(FacesServlet.java:508)

root cause
javax.persistence.PersistenceException: [PersistenceUnit: fonograma] Unable to build EntityManagerFactory

org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:915)

org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:890)

org.hibernate.ejb.HibernatePersistence.createEntityManagerFactory(HibernatePersistence.java:57)

javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:63)

javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:47)

br.ifsp.fonografia.bean.DiscoBean.CadastrarDisco(DiscoBean.java:40)

sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

java.lang.reflect.Method.invoke(Unknown Source)

org.apache.el.parser.AstValue.invoke(AstValue.java:264)

org.apache.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:278)

com.sun.faces.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:105)

javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:88)

com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:102)

javax.faces.component.UICommand.broadcast(UICommand.java:315)

javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:787)

javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1252)

com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:81)

com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)

com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)

javax.faces.webapp.FacesServlet.service(FacesServlet.java:508)

root cause
org.hibernate.AnnotationException: Use of @OneToMany or @ManyToMany targeting an unmapped class: br.ifsp.fonografia.entities.Disco.musica[br.ifsp.fonografia.entities.Musica]

org.hibernate.cfg.annotations.CollectionBinder.bindManyToManySecondPass(CollectionBinder.java:1057)

org.hibernate.cfg.annotations.CollectionBinder.bindStarToManySecondPass(CollectionBinder.java:733)

org.hibernate.cfg.annotations.CollectionBinder$1.secondPass(CollectionBinder.java:668)

org.hibernate.cfg.CollectionSecondPass.doSecondPass(CollectionSecondPass.java:66)

org.hibernate.cfg.Configuration.originalSecondPassCompile(Configuration.java:1593)

org.hibernate.cfg.Configuration.secondPassCompile(Configuration.java:1355)

org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1733)

org.hibernate.ejb.EntityManagerFactoryImpl.<init>(EntityManagerFactoryImpl.java:94)

org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:905)

org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:890)

org.hibernate.ejb.HibernatePersistence.createEntityManagerFactory(HibernatePersistence.java:57)

javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:63)

javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:47)

br.ifsp.fonografia.bean.DiscoBean.CadastrarDisco(DiscoBean.java:40)

sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

java.lang.reflect.Method.invoke(Unknown Source)

org.apache.el.parser.AstValue.invoke(AstValue.java:264)

org.apache.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:278)

com.sun.faces.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:105)

javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:88)

com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:102)

javax.faces.component.UICommand.broadcast(UICommand.java:315)

javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:787)

javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1252)

com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:81)

com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)

com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)

javax.faces.webapp.FacesServlet.service(FacesServlet.java:508)

note The full stack trace of the root cause is available in the Apache Tomcat/7.0.29 logs.

Apache Tomcat/7.0.29

6 Respostas

luiz_renato

Olha,

O log está mostrando o erro :

A

[quote=luiz_renato]Olha,

O log está mostrando o erro :

mas eu estou usando o @OnetoMany

luiz_renato

E vc está mapeando br.ifsp.fonografia.entities.Musica ?

A

olha o codigo

package br.ifsp.fonografia.entities;

import javax.persistence.Column;

import javax.persistence.FetchType;

import javax.persistence.GeneratedValue;

import <a href="http://javax.persistence.Id">javax.persistence.Id</a>;

import javax.persistence.JoinColumn;

import javax.persistence.ManyToOne;

public class Musica {

@Id
@GeneratedValue

int id_musica;

@Column ( name = "ds_titulo" )
String titulo;

@Column ( name = "ds_tempo" )
String tempo;

@ManyToOne ( fetch = FetchType.LAZY)
@JoinColumn ( name = "disco_id" )

Disco disco;

public int getId_musica() {
	return id_musica;
}

public void setId_musica(int id_musica) {
	this.id_musica = id_musica;
}

public String getTitulo() {
	return titulo;
}

public void setTitulo(String titulo) {
	this.titulo = titulo;
}

public String getTempo() {
	return tempo;
}

public void setTempo(String tempo) {
	this.tempo = tempo;
}

public Disco getDisco() {
	return disco;
}

public void setDisco(Disco disco) {
	this.disco = disco;
}

}

luiz_renato

Já tentou colocar a anotação @Entity ?

A

Consegui, depois de olhar o que voce me disse, luis renato, vi que o mapeamento no serverfaces estava *xhtml e não *.xhtml

bom obrigado pela ajuda e sempre que precisar, irei perguntar :slight_smile:

Criado 21 de abril de 2013
Ultima resposta 22 de abr. de 2013
Respostas 6
Participantes 2