Great. If you are happy about this resolution (work-around?), I am fine. If you want this to be investigated further, let me know.
Werner Marija Susović wrote: > Thanks Werner, this solution works. > I've added identity attribute to all class mappings for classes that are > superclasses of AClass and field descriptor for id in each of these classes. > > Marija > > On 5/25/07, *Werner Guttmann* <[EMAIL PROTECTED] > <mailto:[EMAIL PROTECTED]>> wrote: > > Can you please > > a) have a look at the release notes for Castor 1.1.1, as I think we > might have fixed a bug in this area (not sure, though). > b) try to add identity attributes to all relevant class mappings. > > If that does not help either, or you do not like this mode, feel free to > raise a new issue at > > http://jira.codehaus.org/browse/CASTOR > > and attach all relevant files. > > Werner > > Marija Susović wrote: > > I'm using castor version 1.1. I'll try to add identity attributes to > > all class mappings. > > Thanks, > > > > Marija > > > > On 5/25/07, *Werner Guttmann* < [EMAIL PROTECTED] > <mailto:[EMAIL PROTECTED]> > > <mailto:[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>>> > wrote: > > > > What version of Castor are you using ? And without having > looked into > > details (yet), I think adding identity="..." attributes to all > class > > mappings might help. > > > > Werner > > > > Marija Susović wrote: > > > Hi! > > > > > > I have a problem with identity descriptor. My object model > is like > > this: > > > > > > public abstract class BaseClass{ > > > > > > private Integer id; > > > ... > > > //getters and setters > > > } > > > > > > public abstract class IntermediaryClass extends BaseClass{ > > > > > > ... > > > } > > > > > > public class AClass extends IntermediaryClass{ > > > > > > private String member1; > > > ... > > > //getters and setters > > > } > > > > > > public class MainClass{ > > > > > > private AClass root; > > > .... > > > //getters and setters > > > } > > > > > > Mapping file looks like this: > > > > > > <mapping> > > > > > > <class name=""java_package.IntermediaryClass> > > > ... > > > </class> > > > > > > <class name="java_package.AClass" > > > extends="java_package.IntermediaryClass" identity="id"> > > > <field name="member-1" type="string"/> > > > <field name="id" type="integer"/> > > > ... > > > </class> > > > > > > <class name="java_package.MainClass"> > > > <field name="root" type="java_package.AClass"> > > > <bind-xml name="root" reference="true"/> > > > </field> > > > ... > > > </class> > > > > > > </mapping> > > > > > > When I try to marshal this model, I get this error: > > > Unable to resolve ID for instance of class > > > > > > > 'hr.combis.rule.editor.DT.utils.ArithmeticTreeImpl$ArithmeticTreeConnectorNode' > > > due to the following error: No identity descriptor available > > > at > > org.exolab.castor.xml.Marshaller.getObjectID(Marshaller.java:2018) > > > at > org.exolab.castor.xml.Marshaller.marshal(Marshaller.java:1657) > > > at org.exolab.castor.xml.Marshaller.marshal > (Marshaller.java:1861) > > > at > org.exolab.castor.xml.Marshaller.marshal(Marshaller.java:1861) > > > at > org.exolab.castor.xml.Marshaller.marshal(Marshaller.java:1861) > > > at > org.exolab.castor.xml.Marshaller.marshal(Marshaller.java :1855) > > > at > org.exolab.castor.xml.Marshaller.marshal(Marshaller.java:840) > > > at > > > > > > hr.combis.rule.editor.mapping.impl.XMLMappingImpl.marshalRuleModel > (XMLMappingImpl.java:105) > > > ... 66 more > > > > > > Here is ArithmeticTreeImpl$ArithmeticTreeConnectorNode equal to > > AClass. > > > > > > I tried to debug and found out that the Castor's method > > > XMLClassDescriptorImpl.setIdentity(fieldDesc) is never > invoked with > > > fieldDesc=id when XMLClassDescriptorImpl is class descriptor for > > > ArithmeticTreeImpl$ArithmeticTreeConnectorNode. Identities > are set > > only > > > for direct subclasses of BaseClass. (BaseClass has few direct > > concrete > > > subclasses, they are not specified above.) > > > Is this a bug or i'm missing something? > > > Thanks, > > > > > > Marija > > > > > > > --------------------------------------------------------------------- > > To unsubscribe from this list please visit: > > > > http://xircles.codehaus.org/manage_email > > > > > > > --------------------------------------------------------------------- > To unsubscribe from this list please visit: > > http://xircles.codehaus.org/manage_email > > --------------------------------------------------------------------- To unsubscribe from this list please visit: http://xircles.codehaus.org/manage_email

