Hi,

I'm facing an issue with serializing our entities to XML. We have a generic
that is used for localization of our entities.

My data model looks as follows:

@MappedSuperclass
public class LocalizationName<LocalizationNameObject> extends 
        private int id;
        protected LocalizationNameObject localizationObject;
        protected String locale;
        protected String localizedName;
}

@MappedSuperclass
public abstract class LocalizableName<LocalizableClass extends
LocalizationName> {
        @OneToMany(cascade = CascadeType.ALL, mappedBy = "localizationObject")
        protected List<LocatableClass> localizationNames = new
ArrayList<LocatableClass>();
}

@Entity
public class WorkflowRole extends LocalizableName<WorkflowRoleNameLocalization>{
}

@Entity
public class WorkflowRoleNameLocalization extends
LocalizationName<WorkflowRole> {
}

If I serialize a WorkflowRole and try to 
   1. set an alias for and 
   2. omit the "id" field of LocalizationName 
by setting:

   xstream.omitField(WorkflowRoleNameLocalization.class, "id");
   // doesn't work either
   xstream.omitField(LocalizationName.class, "id");
   
   xstream.alias("wfRoleLoc", WorkflowRoleNameLocalization.class);

these are ignored. I get the following XML:

 <workflowRole>
      <localizationNames>
        <com.acme.workflow.WorkflowRoleNameLocalization>
          <id>27</id>
          <localizationObject class="com.acme.workflow.WorkflowRole"
reference="../../.."/>
          <locale>de</locale>
          <localizedName>Role 1</localizedName>
        </com.acme.workflow.WorkflowRoleNameLocalization>
      </localizationNames>
    </workflowRole>

Do you have any suggestions how I can work around this or what I'm doing wrong?
I need to remove at least the ID's as I want to re-persist them in a
different database.

Thanks,
Alexander


---------------------------------------------------------------------
To unsubscribe from this list, please visit:

    http://xircles.codehaus.org/manage_email


Reply via email to