Разрешение сопоставления с родительскими разрешениями в спящем режиме - PullRequest
1 голос
/ 17 апреля 2019

Я создал класс Permission, который используется для предоставления доступа к компонентам моего приложения, затем я хотел отобразить все необходимые разрешения в Hibernate, но я столкнулся с проблемой: AnnotationException: Illegal use of mappedBy on both sides of the relationship: org.structure.business.Permission.permissions2.

Разрешения работают следующим образом: есть корневое разрешение «ЧИТАТЬ», если у вас есть разрешение root, вы можете предоставить «РЕДАКТИРОВАТЬ», «СОЗДАТЬ» и «УДАЛИТЬ», вы не можете удалить, если не умеете читать. Поэтому в списке parentPermissions я просто храню права доступа более низкого уровня.

Объект разрешения:

@Entity(name = "PERMISSION")
public class Permission implements Serializable {
    @Id
    private String name;

    @ManyToMany(mappedBy = "permissions2", cascade = CascadeType.ALL)
    private List<Permission> parentPermissions;

    @ManyToMany(mappedBy = "parentPermissions", cascade = CascadeType.ALL)
    private List<Permission> permissions2 = new ArrayList<>();

Как я могу сопоставить свои разрешения?

...