我有一個實體是這樣的:JPA:枚舉在命名查詢
package it.infogroup.vertenze.entities;
import javax.persistence.*;
import java.io.Serializable;
import java.sql.Timestamp;
import java.util.Date;
@Entity
@Table(name = "RICHIESTE_ESPORTAZIONE_ISIDORO")
@NamedQueries({
@NamedQuery(name = "findFlussoDatiGeneraliByStato",
query = "select r from RichiestaEsportazioneIsidoro r
where r.stato = it.infogroup.vertenze.entities.
RichiestaEsportazioneIsidoro$StatoRichiesta.NEW
or r.stato = it.infogroup.vertenze.entities.
RichiestaEsportazioneIsidoro$StatoRichiesta.FAIL
and r.tipoFlusso = it.infogroup.vertenze.entities.
RichiestaEsportazioneIsidoro$TipoFlusso.DATI_GENERALI"),
@NamedQuery(name = "findFlussoAccantonamentiByStato",
query = "select r from RichiestaEsportazioneIsidoro r
where r.stato = it.infogroup.vertenze.entities.
RichiestaEsportazioneIsidoro$StatoRichiesta.NEW
or r.stato = it.infogroup.vertenze.entities.
RichiestaEsportazioneIsidoro$StatoRichiesta.FAIL
and r.tipoFlusso = it.infogroup.vertenze.entities.
RichiestaEsportazioneIsidoro$TipoFlusso.ACCANTONAMENTI")
})
public class RichiestaEsportazioneIsidoro implements Serializable {
public final static String QUERY_FIND_BY_LOTTO_AND_STATO =
"findRichiestaByLottoAndStato";
public enum StatoRichiesta {
NEW,
ELAB,
SENT,
FAIL
}
public enum TipoFlusso {
DATI_GENERALI,
ACCANTONAMENTI
}
上部署我得到這個錯誤:
01/12/2014 16:59 [ERROR]: org.hibernate.impl.SessionFactoryImpl -
Error in named query: findFlussoAccantonamentiByStato
org.hibernate.hql.ast.QuerySyntaxException:
unexpected token: . near line 1, column 167 [select r from
it.infogroup.vertenze.entities.RichiestaEsportazioneIsidoro r
where r.stato = it.infogroup.vertenze.entities.
RichiestaEsportazioneIsidoro$StatoRichiesta.NEW
or r.stato = it.infogroup.vertenze.entities.
RichiestaEsportazioneIsidoro$StatoRichiesta.FAIL
and r.tipoFlusso = it.infogroup.vertenze.entities.
RichiestaEsportazioneIsidoro$TipoFlusso.ACCANTONAMENTI]
有人可以幫助我理解我在做什麼錯? 謝謝。
這應該工作,你可以顯示你如何註釋'RichiestaEsportazioneIsidoro'中的枚舉字段嗎? – 2014-12-01 16:13:37
我使用'@Enumerated(EnumType.STRING)'註釋了它們' – 2014-12-01 16:18:34