Я использую диспетчер объектов Hibernate 3.5.1-Final с MS SQL Server 2005 и пытаюсь сохранить несколько новых объектов.Моя сущность настроена аннотациями следующим образом:
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private int id;
После вызова
entityManager.persist(newEntity)
Я не вижу сгенерированного набора ID, он остается равным 0. Это вызывает следующее исключение при сохранении следующего новогоentity:
org.hibernate.NonUniqueObjectException: a different object with the same identifier value was already associated with the session: [x.y.z.MyEntity#0]
Я могу обойти это, высвободив недавно сохраненную сущность из кэша, прежде чем я сохраню следующую сущность, но это не идеально.Что мне нужно сделать, чтобы правильно обновить объект после вставки?