I am storing a Map in JPA , which stores a keyword translation in each language . such as one object stores Locale.ENGLISH -> \"Father\" , Locale.CHINESE -> \"Pa
I had the same problem. It looks like accessing map by ref (without VALUE()) already gives you a map entry value, i.e. the next JPQL should be transformed to a valid SQL:
select r from Relation r join r.langMap m where ( KEY(m) = :locale and m = :value )