JPA Hibernar em cascata muitos-para-muitos

Estou usando o JPA 2.0 e o hibernate. Eu tenho uma classe de usuário e uma classe de grupo da seguinte maneira:

public class User implements Serializable {
    @Id
    @Column(name="USER_ID")
    private String userId;

    @ManyToMany
    @JoinTable(name = "USER_GROUP",
               joinColumns = {
                   @JoinColumn(name = "GROUP_ID")
               },
               inverseJoinColumns = {
                   @JoinColumn(name = "USER_ID")
               }
    )
    private Set<Group> groupList;

    //get set methods
}

public class Group
{
    @Id
    @Column(name="GROUP_ID")
    private String groupId;

    @ManyToMany(mappedBy="groupList")
    private Set<User> memberList;
    //get set methods
}

E então, crio um usuário e um grupo e depois atribuo o usuário ao grupo.

O que eu quero é que quando eu excluir o grupo, o grupo será excluído (é claro) e todo o relacionamento de grupo de usuários que o grupo tiver será excluído automaticamente da tabela de junção USER_GROUP, mas o próprio usuário não será excluído da Tabela USER.

Com o código que tenho acima, somente a linha da tabela GROUP será excluída quando eu excluir um grupo e o usuário ainda terá uma entrada no grupo excluído na tabela de junção USER_GROUP.

Se eu colocar cascata na classe User assim:

@ManyToMany(cascade=CascadeType.ALL)
@JoinTable(name = "USER_GROUP",
joinColumns =
{
    @JoinColumn(name = "GROUP_ID")
},
inverseJoinColumns =
{
    @JoinColumn(name = "USER_ID")
})
private Set<Group> groupList;

Quando eu excluir o grupo, o usuário também será excluído!

Existe alguma maneira de conseguir o que eu quero?

questionAnswers(3)

yourAnswerToTheQuestion