Hallo,
ja hab ich galube auch blöde formuliert, ist auch alles net ganz so einfach ich versuch mal so zu beschreiben wie du es versucht hast.
In der Datenbank sind unveränderbar! definiert:
A) Eine Struktur von Auftragspunkten(rekursiv) die wieder beliebig viele andere Auftragspunkte enthaten kann.
2) Ich möchte jetzt dieselbe Struktur Struktur(A)
wiederbenutzen,
verändern(benutzer selektiert oder deselektiert bestimmte punkte) und diese veränderte Struktur(A) einem Auftrag(B) zuordnen
dabei soll Struktur A nicht in die ursprüngliche Tabelle gespeichert werden(würde ja die Vorlange überschreiben) sondern in eine andere.
Ich glaube das was ich mir da so vorstelle ist nicht möglich oder?
Wahrscheinlichmuß ich, wenn ich sowas machen will eine Extra Klasse schreiben und diese dann in eine seperate Tabelle speichern:
Code:
@Entity
@Table(name = "changeabletaskitem")
public class ChangeableTaskItem extends TaskItem
@OneToOne
public Task getTask() {
}
....
bzw den Weg gehen den ich mir erst überlegt habe das heißt nur die selektierten Auftragspukte über ein join festelegen.
Code:
@ManyToMany(
targetEntity=TaskItem.class,
cascade={CascadeType.ALL}
)
public List<TaskItem> getTaskItems() {
return this.taskItems;
}
public void setTaskItems(List<TaskItem> taskItems) {
this.taskItems = taskItems;
}
was aber den Nachteil hat, da sich das ganze um eine rekursive struktur handelt, gehen evtl änderungen in dieser verloren wenn man nur die oberpunkte speichert.
Puhh hoffe das versteht irgendeiner, wen nicht , net so schlimm.
Wies aussieht werde ich sowieso auf die Rekursion verzichten(müßen?), ist zwar sehr schön weil das System damit offen bleibt(erweiterbar), aber
ich kann im frontend das eh nur bis zu1ten Ebene darstellen (benutze jsf)
Aber mir gehts um Prinizip.
Vielen Dank,
Holger[/code]