Galera eh o seguinte…
Tou com um problema na hora de fazer uma consulta em uma tabela no meu projeto…
consigo inserir…remover…menos consultar…vai o exemplo:
[color=blue]@Entity(name = “Specialization”) //nome no qual poderei utilizar para as consultas @Table(name = “specialization”)
public class Specialization implements Serializable { @Id @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = “specialization_id_seq”)
private int id;
private String name;[/color]
e toda vez q coloco pra rodar qualquer consulta sobre esta tabela por exemplo ( select s from Specialization s )
dar o seguinte erro:
[color=red]Exception in thread “main” java.lang.IllegalArgumentException: An exception occured while creating a query in EntityManager
at oracle.toplink.essentials.internal.ejb.cmp3.EntityManagerImpl.createQuery(EntityManagerImpl.java:194)
at controllers.SpecializationController.searchAll(SpecializationController.java:55)
at facade.FacadeControllers.searchAllSpecialization(FacadeControllers.java:156)
at basic.MainTest.main(MainTest.java:23)
Caused by: Exception [TOPLINK-8034] (Oracle TopLink Essentials - 9.1 (Build b28)): oracle.toplink.essentials.exceptions.EJBQLException
Exception Description: Unknown abstract schema type [Specialization].[/color]
e o misterio eh que tenho outras classes no meu projeto…q faz tudo direitinho (consulta-remove-add) …agora ja essa nao faz uma consulta…
obs: a frase Exception Description: Unknown abstract schema type [Specialization]…porem no @Entity eu definir o shema…mas mesmo assim ele nao ta achando…diferentemento do q aconteceu com as outras classes…
por favor…quem souber disso…me responda…pois tou precisando urgentemente de terminar isso!
Bom amigo…em relacao ao @Entity estou importando corretamente…e mudei o nome da classe duas vezes…e nada…
tou aki…quebrando a cabeca a mais de 2 horas…
e nao sei como resolver cara…e pior…tenho q entregar isso hoje ainda…
meu feriado depende disso…kkkkk
Galera…tou achando q nao fui mt claro sobre a minha duvida…vai ai um parte…
@Entity(name = “Specialization”) //nome no qual poderei utilizar para as consultas @Table(name = “specialization”) @NamedQueries( { @NamedQuery(name = “specializationById”, query = “select s from Specialization e where e.id = :id”) })
public class Specialization implements Serializable { @Id @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = “specialization_id_seq”)
private int id;
private String name;
pronto…essa NamedQuey toda vez q tento chama-la…da um exception (como ja foi citado no topo) =/
Fiquei com raiva por este tópico não ter uma resposta de conclusão, apesar do autor ter conseguido resolver o problema, e por esse motivo eu acabei de me cadastrar no GUJ, rs.
Funcionou após eu incluir no persistence.xml do meu projeto a classe que estou fazendo referência na minha Query: