Ik had hetzelfde probleem. Het lijkt erop dat toegang tot de kaart via ref (zonder VALUE()) je al een kaartinvoerwaarde geeft, d.w.z. de volgende JPQL moet worden getransformeerd naar een geldige SQL:
select r from Relation r join r.langMap m where ( KEY(m) = :locale and m = :value )