2
respostas

Erro ao criar os campos EBOOK, IMPRESSO, COMBO

package br.com.alura.exemplos01.model;

import java.math.BigDecimal;

import javax.persistence.Embeddable;

import br.com.alura.exemplos01.model.enuns.TipoPreco;

@Embeddable// está dizendo para colocar dentro da tabela incorporada compoe uma entidade
public class Preco {

    private BigDecimal valor;
    private TipoPreco tipo;


    public BigDecimal getValor() {
        return valor;
    }
    public void setValor(BigDecimal valor) {
        this.valor = valor;
    }
    public TipoPreco getTipo() {
        return tipo;
    }
    public void setTipo(TipoPreco tipo) {
        this.tipo = tipo;
    }

@Entity public class Produto {

@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private int ID;
private String titulo;

@ElementCollection
private ArrayList<Preco> precos;
private int pagina;

public int getID() {
    return ID;
}
public void setID(int iD) {
    ID = iD;
}
public ArrayList<Preco> getPrecos() {
    return precos;
}
public void setPrecos(ArrayList<Preco> precos) {
    this.precos = precos;
}
private String descricao;

public Produto() {}

public String getTitulo() {
    return titulo;
}
public void setTitulo(String titulo) {
    this.titulo = titulo;
}
public String getDescricao() {
    return descricao;
}
public void setDescricao(String descricao) {
    this.descricao = descricao;
}
public int getPagina() {
    return pagina;
}
public void setPagina(int pagina) {
    this.pagina = pagina;
}
@Override
public String toString() {
    return "Produto [titulo=" + titulo + ", descricao=" + descricao + ", pagina=" + pagina + "]";
}
HTTP Status 500 – Internal Server Error


Type Exception Report

Message Servlet.init() for servlet dispatcher threw exception

Description The server encountered an unexpected condition that prevented it from fulfilling the request.

Exception 
javax.servlet.ServletException: Servlet.init() for servlet dispatcher threw exception
    org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:494)
    org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
    org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:1025)




Root Cause 
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class br.com.alura.exemplo01.conf.JPAConfiguration: Invocation of init method failed; nested exception is javax.persistence.PersistenceException: [PersistenceUnit: default] Unable to build Hibernate SessionFactory
    org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1568)
    org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:540)
    org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:476)
    org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:302)
    org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:229)
    org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:298)


}
2 respostas

Remove a anotação @Embeddable de TipoPreco

Onde posso colocar a notação ?