Auf Thema antworten

Hallo Community,


Ich erklär erstmal die Problemstellung:


Ich habe eine User-Klasse diese ist sozusagen das Zentrum der Anwendung.

Und fast alle anderen Klassen haben eine Many-to-One Association zu diese User-Klasse.


Nun hab ich das Problem das wenn ich ein UserObjekt lösche möchte ich das alle Objekte die eine

Many-to-One beziehung zu einem UserObjekt haben ebenfalls gelöscht werden.


Hier erstmal die Attribute der User-Klasse und die Entsprechenden Annotationen...


[code=Java]

    @Id

    @GeneratedValue

    @OneToMany(cascade = CascadeType.DELETE_ORPHAN)

    private int UserId;

    private String Nick;

    private String Mailaddy;

    private String Password;

    private Boolean Status;

    private Boolean Gesperrt;

    private float Taler;

[/code]


Hier eine Klasse die eine Many-to-One beziehung zu der UserKlasse hat:



[code=Java]

    @Id

    @GeneratedValue

    private int Id;

    @ManyToOne

    private User UserId;

    @ManyToOne

    private Gueter GueterId;

    private float Kosten;

    private int Anzahl;

[/code]


Wie man bei den User-Attributen sehen kann habe ich "cascade = CascadeType.DELETE_ORPHAN" hingeschrieben, dass sollte eigentlich alle Objekte die eine Assoziation zu diesem Objekt haben ebenfalls löscht.... dummerweise krieg ich aber folgende Fehlermeldung:

"Type mismatch: cannot convert from CascadeType to CascadeType[]"

Ich denke mal ich soll dort ein set oder eine Liste benutzen aber wie soll ich das machen wenn ein UserObjekt zu mehr als 1 Objekt eine assoziation hat?


greetz

compi



Oben