Отображение JPA / Hibernate OneToMany с использованием составного PrimaryKey

В настоящее время я борюсь с правильными аннотациями сопоставления для сценария, использующего составной класс первичного ключа. Первое, чего я пытаюсь добиться словами:

У меня есть 2 класса: группа и FieldAccessRule. Группа может иметь много FieldAccessRules, в то время как FieldAccessRule назначена только ОДНА группа. Модификация это пока не проблема (упрощенно):

public class Group{
    ...
    @OneToMany(mappedBy = "group")
    private Set<FieldAccessRule> fieldAccessRules;
    ... 
}

и для FieldAccessRule:

public class FieldAccessRule {
    ...
    @ManyToOne
    @JoinColumn(name = "group_id")
    private Group group;
    ...
}

Теперь я решил использовать Composite PK для FieldAccessRule, потому что правило должно быть уникальным для ОДНОЙ группы и ОДНОГО поля. Это выглядит так:

@Embeddable
public class FieldAccessRulePK implements Serializable{
    private String fieldKey;
    private Group group;
    ...
}

И оф. FieldAccessRule необходимо изменить на

public class FieldAccessRule {
    ...
    @EmbeddedId
    private FieldAccessRulePK fieldAccessRulePK;
    ...
}

Как мне создать правильное сопоставление для FieldAccessRuleSet группы сейчас? Делая это так, я получаю:

В атрибуте 'fieldAccessRules' "сопоставленное" значению "группа" не может быть преобразовано в атрибут> на целевом объекте.

Какой правильный способ создания сопоставления из группы в ЧАСТЬ PrimaryKey?

Редактировать: я знаю, выяснил, что с помощью

public class Group{
    ...
    @OneToMany(mappedBy = "fieldAccessRolePK.group")
    private Set<FieldAccessRule> fieldAccessRules;
    ... 
}

точно работает, как ожидалось. Он прекрасно компилируется, создает базу данных нормально, и после загрузки группы с предопределенными ролями они становятся доступными, как и ожидалось.

Тем не менее, Eclipse все еще говорит

В атрибуте 'fieldAccessRules' значение 'mapped by' 'fieldAccessRulePK.group' не может быть преобразовано в атрибут целевого объекта.

Я не уверен, хорошо ли игнорировать Error и "предполагать" все хорошо ... (Я нашел пост, в котором было сказано, что отображение шаблона attr1.attr2 поддерживается Hibernate, но не JPA-подтверждение. )

Ответы на вопрос(2)

Ваш ответ на вопрос