Execute a aplicação e depois volte para update, senão toda vez que iniciar a aplicação ele apaga as tabelas e cria novamente.
Obs.: para que as tabelas sejam criadas é preciso executar alguma operação de banco de dados. Só criar o entity manager factory, se estiver usando, já serve. Se tiver dúvidas, consulte aqui:
Como faço?
fiz aqui e da exception com o nome,
Exception in thread “main” javax.persistence.PersistenceException: No Persistence provider for EntityManager named conexao
meu projeto esta no maven, onde coloco o persistence.xml? precisa que criar pasta META-INF
?
e onde?
Não.
Projetos web possuem uma pasta META-INF dentro de WebContent.
Esta, em específico, precisa ficar na raiz dos códigos fonte.
No caso do maven, a estrutura dos packages é diferente:
Projeto
> src/main/java
>> br.com.suaempresa.seuprojeto...
>>META-INF
>>> persistence.xml
public static void main(String[] args) {
// TODO Auto-generated method stub
EntityManagerFactory emf;
EntityManager em;
emf = Persistence.createEntityManagerFactory("conexao");
em = emf.createEntityManager();
}
Mas ao rodar gera essa exception
Exception in thread “main” javax.persistence.PersistenceException: [PersistenceUnit: conexao] Unable to build EntityManagerFactory
Exception in thread "main" javax.persistence.PersistenceException: [PersistenceUnit: conexao] Unable to build EntityManagerFactory
at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:914)
at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:889)
at org.hibernate.ejb.HibernatePersistence.createEntityManagerFactory(HibernatePersistence.java:56)
at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:63)
at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:47)
at br.com.projetos.sisCorp.ultil.Mapeamento.main(Mapeamento.java:18)
Caused by: org.hibernate.AnnotationException: @Temporal should only be set on a java.util.Date or java.util.Calendar property: br.com.projetos.sisCorp.model.Cobranca.dataProcesso
at org.hibernate.cfg.annotations.SimpleValueBinder.setType(SimpleValueBinder.java:148)
at org.hibernate.cfg.annotations.PropertyBinder.makePropertyAndValue(PropertyBinder.java:186)
at org.hibernate.cfg.annotations.PropertyBinder.makePropertyValueAndBind(PropertyBinder.java:201)
at org.hibernate.cfg.AnnotationBinder.processElementAnnotations(AnnotationBinder.java:2011)
at org.hibernate.cfg.AnnotationBinder.processIdPropertiesIfNotAlready(AnnotationBinder.java:765)
at org.hibernate.cfg.AnnotationBinder.bindClass(AnnotationBinder.java:684)
at org.hibernate.cfg.Configuration$MetadataSourceQueue.processAnnotatedClassesQueue(Configuration.java:3406)
at org.hibernate.cfg.Configuration$MetadataSourceQueue.processMetadata(Configuration.java:3360)
at org.hibernate.cfg.Configuration.secondPassCompile(Configuration.java:1334)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1724)
at org.hibernate.ejb.EntityManagerFactoryImpl.<init>(EntityManagerFactoryImpl.java:84)
at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:904)
... 5 more
A falha está na sua classe Cobranca.
Como já está esclicito no print:
A anotação @Temporal só pode ser usada em java.util.Date porém seu atributo dataProcesso é um Calendar.
Caused by: org.hibernate.AnnotationException: @Temporal should only be set on a java.util.Date or java.util.Calendar property: br.com.projetos.sisCorp.model.Cobranca.dataProcesso
Cara tenta aprender a analisar os erros, fica muiiiiito mais facíl de resolver a falha, como pode ver tá explicito alí o que está acontecendo. Logo que pegar a prática você vai ver.
EDIT
Deixei a tela de resposta muito tempo aberta, igor_ks já lhe respondeu.
na classe produtos esta assim, lembrando que em todas as classes, eu criei um @NamedQuery
em produtos criei @NamedQuery(name=“Produto.findAll”, query=“SELECT p FROM Produto p”)
como vi em um livro, nao sei se isso é necessario.
estou meio perdido ainda, por que esta falando que esta duplicado?
Caused by: org.hibernate.AnnotationException: mappedBy reference an unknown target entity property: br.com.projetos.sisCorp.model.NotaFiscal.notafiscal in br.com.projetos.sisCorp.model.Cfop.notasfiscais
at org.hibernate.cfg.annotations.CollectionBinder.bindStarToManySecondPass(CollectionBinder.java:666)
at org.hibernate.cfg.annotations.CollectionBinder$1.secondPass(CollectionBinder.java:626)
at org.hibernate.cfg.CollectionSecondPass.doSecondPass(CollectionSecondPass.java:66)
at org.hibernate.cfg.Configuration.originalSecondPassCompile(Configuration.java:1586)
at org.hibernate.cfg.Configuration.secondPassCompile(Configuration.java:1359)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1724)
at org.hibernate.ejb.EntityManagerFactoryImpl.(EntityManagerFactoryImpl.java:84)
at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:904)
… 5 more
Agora esta dando erro no relacionamento, das duas classes.
se precisar posto as classes