if (id != null)
{
EntityInfo relatedEntityInfo = findInSaveMap(propType.getReturnedClass(), id);
if (relatedEntityInfo == null) {
EntityState state = entityInfo.entityState;
// if (state == EntityState.Added || state == EntityState.Modified || (state == EntityState.Deleted
// && propType.getForeignKeyDirection() != ForeignKeyDirection.FOREIGN_KEY_TO_PARENT)) {
if (state != EntityState.Deleted || propType.getForeignKeyDirection() != ForeignKeyDirection.FOREIGN_KEY_TO_PARENT) {
String relatedEntityName = propType.getName();
relatedEntity = session.load(relatedEntityName, (Serializable) id, LockOptions.NONE);