Looks like your are trying to persist the same java instance into 2 differents sessions. It isn't allowed.
Code:
myObject = session1.load();
session2.saveOrUpdate(myObject);
It's certainly more complex than that in your case.
You can evict the object before associating it to a second session
Code:
myObject = session1.load();
session1.evict(myObject);
session2.save(myObject);
But the best solution is not you be in such a case. Are you sharing java instance taken from session1 (still opened) and using it with a second session ?