Hi Chris, the code snippet you supplied doesn't compile against the code that I generated. Person's dog Property is isMany=true so to add a dog you need to do person.getDog().add(aDog) Regards, kelvin.
On 10/05/07, Chris Mildebrandt <[EMAIL PROTECTED]> wrote:
Hi, I'm having a little generation problem with groups. Here's my sample schema: <?xml version="1.0" encoding="UTF-8"?> <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.example.org/Person" xmlns:person="http://www.example.org/Person" elementFormDefault="qualified"> <xsd:element name="Person" type="person:PersonType"></xsd:element> <xsd:complexType name="PersonType"> <xsd:sequence> <xsd:element name="Name" type="xsd:string"></xsd:element> <xsd:element name="Age" type="xsd:string"></xsd:element> <xsd:group ref="person:AnimalGroup" minOccurs="0" maxOccurs="unbounded"/> </xsd:sequence> </xsd:complexType> <xsd:simpleType name="Hair"> <xsd:restriction base="xsd:string"></xsd:restriction> </xsd:simpleType> <xsd:group name="AnimalGroup"> <xsd:choice> <xsd:element name="Cat" type="person:CatType"/> <xsd:element name="Dog" type="person:DogType"/> </xsd:choice> </xsd:group> <xsd:complexType name="DogType"> <xsd:sequence> <xsd:element name="Name" type="xsd:string"></xsd:element> <xsd:element name="Age" type="xsd:string"></xsd:element> <xsd:element name="Breed" type="xsd:string"></xsd:element> </xsd:sequence> </xsd:complexType> <xsd:complexType name="CatType"> <xsd:sequence> <xsd:element name="Name" type="xsd:string"></xsd:element> <xsd:element name="Age" type="xsd:string"></xsd:element> <xsd:element name="Breed" type="xsd:string"></xsd:element> </xsd:sequence> </xsd:complexType> </xsd:schema> And my code: HelperContext context = SDOUtil.createHelperContext(); PersonFactory.INSTANCE.register(context); PersonType person = PersonFactory.INSTANCE.createPersonType(); person.setAge("30"); person.setName("Jim"); DogType dog = PersonFactory.INSTANCE.createDogType(); dog.setAge("4"); dog.setBreed("pug"); dog.setName("chewie"); DogType[] dogs = new DogType[0]; person.setDog(dogs); person.getDog(); I get the following exception when running either setDogs() or getDogs(): Exception in thread "main" java.lang.ClassCastException: org.eclipse.emf.ecore.util.FeatureMapUtil$FeatureEList at org.example.person.impl.PersonTypeImpl.setDog( PersonTypeImpl.java:447) at Test.anyTest_Static_Person(Test.java:144) at Test.main(Test.java:153) Let me know if you need any more information. Thanks, -Chris --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]