Domanda

scenario

ipotetico: Ho due modelli: Author e Book. Il modello Book ha una relazione molti-a-uno per Author.

diciamo Let che voglio solo per controllare le modifiche apportate a Book. Ho annotare la classe con @Audited, ma ottengo un errore lamentando che la proprietà getAuthor() di Book non può essere verificata in quanto Author non è controllata.

Perché è questo? Voglio verifica se l'autore del libro cambia, ma non mi importa se i cambiamenti autori soprannome. Non ha senso per avere un tavolo author_aud nel mio database, ma a quanto pare questo non è possibile se non vado avanti e audit del modello Author o specificamente annotare la proprietà getAuthor() con una @Audited(...) con una proprietà di ignorare il rapporto. Tuttavia, se faccio questo non sarò più in grado di controllare il rapporto libro / autore.

È stato utile?

Soluzione

probabilmente non sarà in grado di controllare il libro ed è autore rapporto se l'autore non viene controllato. Forse si dovrebbe cambiare il modo in cui la relazione viene mappata: E 'strano avere un libro "propria" si dell'autore: avrei fatto una relazione ManyToOne unidirectionnal da autore ad i suoi libri. Con questa concezione, si sarà in grado di verificare i libri senza revisione gli autori.

Altri suggerimenti

Aggiungi questa mappatura alla relazione ManyToOne.

@Audited (targetAuditMode = RelationTargetAuditMode.NOT_AUDITED)

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top