Jag hade samma problem. Det ser ut som att när du kommer åt kartan med ref (utan VALUE()) redan får du ett kartinmatningsvärde, dvs nästa JPQL bör omvandlas till en giltig SQL:
select r from Relation r join r.langMap m where ( KEY(m) = :locale and m = :value )