Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Specifying columns in jpql select causes casting error

Tags:

java

jpa

jpql

When I specify columns in my jpql/jpa 2.0 query, i.e. select p.id, p.lastName, p.firstName from Profile p where p.group = :group I get the following error: [Ljava.lang.Object; cannot be cast to com.profs.ws.Profile... Anyone know how to resolve this casting issue?

The Profile entity class itself has properties of the following types: String, int, and Collection. The properties I'm selecting in the query are either of the type String or int.

like image 985
nking253 Avatar asked Sep 13 '26 12:09

nking253


1 Answers

When you specify properties of an object, JPA returns the list of Object[]. You can cast the return value to List<Object[] instead of List<Profile> to avoid the ClassCastException. If you are using Hibernate as JPA provider, you can map the select clause to a new object. See select clause documentation for details.

like image 60
Chandra Patni Avatar answered Sep 16 '26 03:09

Chandra Patni



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!