Bonjour,
Mon problème est le suivant : J'ai une classe A avec un attribut Id marqué avec les annotations suivantes : @Id @GeneratedValue(generator = "uddi-id") @GenericGenerator(name = "uddi-id", strategy = "myapp.persistence.util.UDDIIdentifierGenerator")
Si je sauve un objet A en base dans lequel je ne précise pas l'Id, tout se passe comme prévu, l'ID est généré par mon custom generator et l'objet est persisté.
Là ou ça coince, c'est quand je souhaite occasionnellement enregistrer un objet de type A dont je souhaite fixé moi même la valeur de l'Id. Là ça plante car soit hibernate essaie de faire un update (cas du saveOrUpdate) sur cet objet qui n'est pas encore persisté soit il m'écrase l'Id que je lui fournis (cas du merge persist).
Ma question est donc : est-il possible, pour un même objet, de laisser hibernate fixer l'Id dans certain cas (si l'objet est passé à saveOrUpdate sans Id) et dans d'autre cas de pouvoir préciser un Id soit même avant de persister l'objet.
|