The specification said 'it is possible that multiple entity beans use the same primary key class' on section 9.8.
Now I have two entity bean that uses the same primary key as indicated by the following codes: -------------------------------------Primary Key object--------------------------------------- public class IDPrimaryKey { private String id = null; private Integer versionNumber = null; public void setID(String newID) { this.id = newID; } public String getID() { return id; } public boolean equals(Object obj) { if (obj instanceof this) { MyPrimaryKey temp = (MyPrimaryKey)obj; return id.equals(temp.getID)); } return false; } public int hashCode() { return id.hashCode(); } public Integer getVersionNumber() {return versionNumber;} public void setVersionNumber(Integer newVersionNumber) {this.versionNumber = newVersionNumber;} } -------------------------------------------------Entity bean 1----------------------------------------- public class Employee implements EntityBean { private int versionNumberCount = 0; private IDPrimaryKey primaryKey = null; private EntityContext entityContext = null; public void ejbActivate() throws EJBException,java.rmi.RemoteException { primaryKey = (IDPrimaryKey)entityContext.getPrimaryKey(); } public void ejbLoad() throws EJBException,java.rmi.RemoteException { ... ... load data from database......... primaryKey.setVersionNumber(new Integer(versionNumberCount++)); } ................ } -------------------------------------------------Entity Bean 2 ------------------------------------- public class Student implements EntityBean { private IDPrimaryKey primaryKey = null; private EntityContext entityContext = null; public void ejbActivate() throws EJBException,java.rmi.RemoteException { primaryKey = (IDPrimaryKey)entityContext.getPrimaryKey(); } ................ public void ejbLoad() throws EJBException,java.rmi.RemoteException { ... ... load data from database.........don't set version number here } } ---------------------------------------------------------------------------- ------------------ If I am debuging them, two IDPrimaryKey objects in above two entity beans have different memory address although memeber attribute 'id' is the same among two IDPrimaryKey objects and one in Employee entity bean with non-null versionNumber and one in Student entity bean with null versionNumber. What happens if the ejb container swap them out and bring them back sometime later? Can Employee entity bean get IDPrimaryKey object with non-null versionNumber and Student entity bean get IDPriamryKey object with null versionNumber? Jim =========================================================================== To unsubscribe, send email to [EMAIL PROTECTED] and include in the body of the message "signoff EJB-INTEREST". For general help, send email to [EMAIL PROTECTED] and include in the body of the message "help".