JPQL inconsitency tra Hibernate e EclipseLink
-
27-09-2019 - |
Domanda
Ho la seguente query che funziona sotto Hibernate, ma non sotto Eclipse:
select o from Organisation o where o.code=:code and o.type=:type
Non è chiaro perché questo è il caso, speravo che qualcun altro potrebbe elaborare per noi. L'errore viene restituito è:
Caused by: java.lang.IllegalArgumentException: An exception occurred while creating a query in EntityManager:
Exception Description: Error compiling the query [select o from Organisation o where o.code=:code and o.type=:type]. Unknown entity type [Organisation].
Abbiamo fatto altre modifiche a parte il passaggio alla classe provider nel file persistence.xml per indicare che stiamo utilizzando ora EclipseLink.
Soluzione
appare come EclipseLink non è la scansione della parte dei vostri file JAR / classi che contengono la classe dell'Organizzazione. Dichiarare esplicitamente in persistence.xml e vedere cosa succede:
<persistence 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_2_0.xsd"
version="2.0">
<persistence-unit name="YourPersUnit">
<provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
<class>foo.bar.Organisation</class>
</persistence-unit>
</persistence>
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow