I have the following in a Question entity:
@NamedQuery(name = "Question.allApproved",
query = "SELECT q FROM Question q WHERE q.status = 'APPROVED'")
and
@Enumerated(EnumType.STRING)
private Status status;
// usual accessors
I am getting this exception:
Exception Description: Error compiling the query
[Question.countApproved:SELECT COUNT(q) FROM Question q WHERE q.status = 'APPROVED'], line 1, column 47: invalid enum equal
expression, cannot compare enum value of type
[myCompnay.application.Status]with a non enum value
of type[java.lang.String]. at
org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.deploy(EntityManagerSetupImpl.java:501)
How do I fix this?
I think you should use your (fully qualified)
Statusenum instead of literal value, so something like this: (assuming yourStatusenum is incom.myexamplepackage)