Estou tendo o seguinte erro:
Exception in thread "AWT-EventQueue-0" java.lang.ExceptionInInitializerError
at sca.app.CadastroProfessorPresenter.<init>(CadastroProfessorPresenter.java:32)
at sca.ui.SCAPrincipal$10.run(SCAPrincipal.java:220)
at java.awt.event.InvocationEvent.dispatch(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'professorDAO' defined in file [C:\workspace\SCA - TCC\resources\ctx\sca-springConfig.xml]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [sca.infra.dao.ProfessorDAOJpa]: Constructor threw exception; nested exception is java.lang.ExceptionInInitializerError
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:883)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:839)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:440)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
at java.security.AccessController.doPrivileged(Native Method)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:221)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:429)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:729)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:381)
at org.springframework.context.support.FileSystemXmlApplicationContext.<init>(FileSystemXmlApplicationContext.java:140)
at org.springframework.context.support.FileSystemXmlApplicationContext.<init>(FileSystemXmlApplicationContext.java:84)
at sca.domain.repositorio.RepositorioFabrica.<clinit>(RepositorioFabrica.java:11)
... 10 more
Caused by: org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [sca.infra.dao.ProfessorDAOJpa]: Constructor threw exception; nested exception is java.lang.ExceptionInInitializerError
at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:115)
at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:61)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:877)
... 26 more
Caused by: java.lang.ExceptionInInitializerError
at sca.infra.dao.ProfessorDAOJpa.<init>(ProfessorDAOJpa.java:15)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:100)
... 28 more
Caused by: javax.persistence.PersistenceException: org.hibernate.AnnotationException: @OneToOne or @ManyToOne on sca.domain.Turma.oferta references an unknown entity: sca.domain.OfertaDisciplina
at org.hibernate.ejb.Ejb3Configuration.configure(Ejb3Configuration.java:247)
at org.hibernate.ejb.HibernatePersistence.createEntityManagerFactory(HibernatePersistence.java:120)
at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:51)
at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:33)
at sca.infra.dao.GenericDAOJPA.<clinit>(GenericDAOJPA.java:18)
... 34 more
Caused by: org.hibernate.AnnotationException: @OneToOne or @ManyToOne on sca.domain.Turma.oferta references an unknown entity: sca.domain.OfertaDisciplina
at org.hibernate.cfg.FkSecondPass.doSecondPass(FkSecondPass.java:56)
at org.hibernate.cfg.AnnotationConfiguration.processFkSecondPassInOrder(AnnotationConfiguration.java:428)
at org.hibernate.cfg.AnnotationConfiguration.secondPassCompile(AnnotationConfiguration.java:286)
at org.hibernate.cfg.Configuration.buildMappings(Configuration.java:1039)
at org.hibernate.ejb.Ejb3Configuration.buildMappings(Ejb3Configuration.java:1211)
at org.hibernate.ejb.EventListenerConfigurator.configure(EventListenerConfigurator.java:154)
at org.hibernate.ejb.Ejb3Configuration.configure(Ejb3Configuration.java:847)
at org.hibernate.ejb.Ejb3Configuration.configure(Ejb3Configuration.java:178)
at org.hibernate.ejb.Ejb3Configuration.configure(Ejb3Configuration.java:235)
... 38 more
Nesta classe:
@Entity
public class Turma {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
@Column(unique = true, nullable = false)
String codigo;
@SuppressWarnings("unused")
@Embedded
private SemestreLetivo semestreLetivo;
@ManyToOne
private Disciplina disciplina;
@Embedded
@OneToOne
private OfertaDisciplina oferta;//esta é a linha do erro
...(métodos)
eu persistence.xml é o seguinte:
<?xml version="1.0" encoding="UTF-8"?>
<persistence version="1.0"
xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd">
<persistence-unit name="SCAPU" transaction-type="RESOURCE_LOCAL">
<class>sca.domain.Disciplina</class>
<class>sca.domain.ItemDisponibilidade</class>
<class>sca.domain.SemestreLetivo</class>
<class>sca.domain.Turma</class>
<class>sca.domain.GradeCurricular</class>
<class>sca.domain.Inscricao</class>
<class>sca.domain.SemestreLetivo</class>
<class>sca.domain.SemestresCursados</class>
<class>sca.domain.OfertaDisciplina</class>
<!-- <class>sca.domain.UsuarioLogin</class>-->
<!-- <class>sca.domain.PerfilLogin</class> -->
Minha configuração do spring é a segunite:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx.xsd">
<!-- DAOS -->
<bean id="professorDAO" class="sca.infra.dao.ProfessorDAOJpa" />
<bean id="disciplinaDAO" class="sca.infra.dao.DisciplinaDAOJpa" />
<bean id="gradeDisponibilidadeDAO" class="sca.infra.dao.GradeDisponibilidadeDAOJpa" />
<bean id="turmaDAO" class="sca.infra.dao.TurmaDAOJpa" />
<bean id="itemDisponibilidadeDAO" class="sca.infra.dao.ItemDisponibilidadeDAOJpa" />
<bean id="semestresCursadosDAO" class="sca.infra.dao.SemestresCursadosDAOJpa"/>
<bean id="semestreLetivoDAO" class="sca.infra.dao.SemestreLetivoDAOJpa"/>
<bean id="ofertaDisciplinaDAO" class="sca.infra.dao.OfertaDisciplinaDAOJpa"/>
<!-- <bean id="usuarioLoginDAO" class="sca.infra.dao.UsuarioLoginDAOJpa"/> -->
<!-- REPOSITORIES -->
<bean id="gradeDisponibilidadeRepositorio" class="sca.domain.repositorio.GradeDisponibilidadeRepositorio">
<property name="gradeDisponibilidadeDAO">
<ref local="gradeDisponibilidadeDAO" />
</property>
</bean>
<bean id="disciplinaRepositorio" class="sca.domain.repositorio.DisciplinaRepositorio">
<property name="disciplinaDAO">
<ref local="disciplinaDAO" />
</property>
</bean>
<bean id="turmaRepositorio" class="sca.domain.repositorio.TurmaRepositorio">
<property name="turmaDAO">
<ref local="turmaDAO" />
</property>
</bean>
<bean id="itemDisponibilidadeRepositorio" class="sca.domain.repositorio.ItemDisponibilidadeRepositorio">
<property name="itemDisponibilidadeDAO">
<ref local="itemDisponibilidadeDAO"/>
</property>
</bean>
<bean id="semestresCursadosRepositorio" class="sca.domain.repositorio.SemestresCursadosRepositorio">
<property name="semestresCursadosDAO">
<ref local="semestresCursadosDAO"/>
</property>
</bean>
<bean id="semestreLetivoRepositorio" class="sca.domain.repositorio.SemestreLetivoRepositorio">
<property name="semestreLetivoDAO">
<ref local="semestreLetivoDAO"/>
</property>
</bean>
<bean id="ofertaDisciplinaRepositorio" class="sca.domain.repositorio.OfertaDisciplinaRepositorio">
<property name="ofertaDisciplinaDAO">
<ref local="ofertaDisciplinaDAO"/>
</property>
</bean>
<!--
<bean id="usuarioLoginRepositorio" class="sca.domain.repositorio.UsuarioLoginRepositorio">
<property name="usuarioLoginDAO">
<ref local="usuarioLoginDAO"/>
</property>
</bean> -->
<!-- DEMAIS BEANS -->
<bean id="estrategiaCalculoGrau" class="sca.domain.EstrategiaCalculoGrau2009" />
<bean id="inscricao" class="sca.domain.Inscricao">
<property name="estrategiaCalculoGrau">
<ref local="estrategiaCalculoGrau" />
</property>
</bean>
</beans>
A classe OfertaDisciplina é a seguinte:
@Embeddable
public class OfertaDisciplina {
@Transient
private int qtdAlunos;
@Transient
private ArrayList<Inscricao> inscricoes;
@Transient
private Inscricao inscricao;
Estou o dia inteiro de hoje tentando resolver este erro.