Frage

Ich habe die folgende Abfrage, dass die Arbeiten unter Hibernate, aber nicht unter Eclipse:

select o from Organisation o where o.code=:code and o.type=:type

Es ist mir nicht klar, warum dies der Fall ist, ich hatte gehofft, dass jemand anderes für uns erarbeiten konnten. Der Fehler wird zurückgegeben:

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].

Wir haben abgesehen keine weiteren Änderungen vorgenommen von einem Wechsel der Provider-Klasse in der Datei persistence.xml wir, um anzuzeigen, werden nun Eclipse verwenden.

War es hilfreich?

Lösung

Sieht aus wie Eclipse scannt nicht den Teil Ihrer JAR-Dateien / Klassen, die die Organisation der Klasse enthalten. Erklären Sie es explizit in persistence.xml und sehen, was passiert:

<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>
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top