Код: Выделить всё
java.lang.NullPointerException: Cannot invoke "org.hibernate.persister.entity.DiscriminatorType.getJdbcJavaType()" because "this.discriminatorType" is null
Код: Выделить всё
@Query("SELECT PermissionEntity " +
"FROM RolePermissionEntity rolePermission " +
"JOIN PermissionEntity permission " +
"WHERE rolePermission.role = :role")
List findPermissionsByRoleId(@Param("role") RoleEntity role);
RoleEntity
Код: Выделить всё
@Entity
@Table(
name = "roles",
indexes = {
@Index(name = "role_name_unique", columnList = "name", unique = true)
}
)
/* Lombok annotations omitted */
public class RoleEntity {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Integer id;
@Column
private String name;
@Transient
private List permissions;
}
Код: Выделить всё
@Entity
@Table(
name = "permissions",
indexes = {
@Index(name = "permission_name_unique", columnList = "name", unique = true)
}
)
/* Lombok annotations omitted */
public class PermissionEntity {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Integer id;
@Column
private String name;
}
Код: Выделить всё
@Entity
@Table(
name = "role_permissions"
)
/* Lombok annotations omitted */
public class RolePermissionEntity {
@EmbeddedId
private RolePermissionId id;
@MapsId("roleId")
@ManyToOne
private RoleEntity role;
@MapsId("permissionId")
@ManyToOne
private PermissionEntity permission;
}
Код: Выделить всё
@Embeddable
/* Lombok annotations omitted */
public class RolePermissionId implements Serializable {
private Integer roleId;
private Integer permissionId;
}
Подробнее здесь: https://stackoverflow.com/questions/778 ... type-getjd