org.hibernate.NonUniqueObjectException: a different object with the same identifier value was already associated with the session
首先看看这个类:
package org.hibernate;
3 
4 import java.io.Serializable 
;
5 
6 import org.hibernate.pretty.MessageHelper;
7 
8 
17 public class NonUniqueObjectException 
extends HibernateException {
18     private final Serializable 
 identifier;
19     private final String 
 entityName;
20 
21     public NonUniqueObjectException(
String 
 message, 
Serializable 
 id, 
String 
 clazz) {
22         super(message);
23         this.entityName = clazz;
24         this.identifier = id;
25     }
26 
27     public NonUniqueObjectException(
Serializable 
 id, 
String 
 clazz) {
28         this(
"a different object with the same identifier value was already associated with the session", id, clazz);
29     }
30 
31     public Serializable 
 getIdentifier() {
32         return identifier;
33     }
34 
35     public String 
 getMessage() {
36         return super.getMessage() + 
": " +
37             MessageHelper.infoString(entityName, identifier);
38     }
39 
40     public String 
 getEntityName() {
41         return entityName;
42     }
43 
44 }
解决方案:
     this..getSession().clear();
			
			
		
 
	
		
			
			
			Error Creating SessionFactory java.lang.SecurityException: class"org.apache.commons.collections.SequencedHashMap"'异常的解决方案
本人用 MyEclipse 6.0.0 开发 Struts + Hibernate应用的时候,单独测试Hibernate的类没有问题,但是当Web层和Struts整合后,就抛出如下异常:
%%%%Error Creating SessionFactory %%%%
java.lang.SecurityException:
class"org.apache.commons.collections.SequencedHashMap"'s signer
informationdoes not match signer information of other classes in the
same package
   原因是myeclipse  6.0的jar包问题。这个是myeclipse没有做好严格的测试。
   网上好多人说是commons-collectionsXXX.jar的问题。我也不知道。我是把所有的myeclipse生成的jar都remove buildpath 了。
   我又自己添加的jar。就OK!!!!