Hello, is it necessary to have the type java.lang.Object for an Object that is referred by IDREF. I tired to give use the Class that really should be the type of the referred Object, but it doesn't work. The exception is: java.lang.IllegalArgumentException: Type conversion error: could not set value of kategorie(com.gastroeasy.xml.Kategorie) with value of type java.lang.String
If you use java.lang.Object instead of com.gastroeasy.xml.Kategorie everything works fine, but kategorie is an Object and not a Kategorie. Can you help me? Thx, Thomas
<?xml version="1.0" encoding="UTF-8"?> <!-- edited with XML Spy v4.2 U (http://www.xmlspy.com) by Thomas (company) --> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified"> <xs:element name="kategorie"> <xs:complexType> <xs:sequence> <xs:element ref="bezeichnung"/> <xs:element ref="kategorie" minOccurs="0" maxOccurs="unbounded"/> <xs:element name="attribut-def" minOccurs="0" maxOccurs="unbounded"> <xs:complexType> <xs:sequence> <xs:element ref="bezeichnung"/> <xs:element name="einheit" type="xs:string" minOccurs="0"/> </xs:sequence> <xs:attribute name="id" type="xs:ID" use="required"/> <xs:attribute name="benoetigt" type="xs:boolean" use="optional" default="false"/> <xs:attribute name="suchbar" type="xs:boolean" use="optional" default="false"/> <xs:attribute name="wert-typ" type="wert-typ" use="optional" default="zahl-wert"/> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name="id" type="xs:ID" use="required"/> </xs:complexType> </xs:element> <xs:element name="artikel"> <xs:complexType> <xs:sequence> <xs:element ref="bezeichnung"/> <xs:element name="beschreibung" type="sprach-element" minOccurs="0"/> <xs:element name="preis" type="xs:float"/> <xs:element name="bild-url" type="xs:anyURI"/> <xs:element name="bestand" type="xs:nonNegativeInteger" minOccurs="0"/> <xs:element name="attribut" minOccurs="0" maxOccurs="unbounded"> <xs:complexType> <xs:choice> <xs:element name="sprach-wert" type="sprach-element"/> <xs:element name="zahl-wert" type="xs:float"/> </xs:choice> <xs:attribute name="attribut-def" type="xs:IDREF" use="required"/> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name="kategorie" type="xs:IDREF" use="required"/> <xs:attribute name="geaendert" type="xs:dateTime" use="optional"/> <xs:attribute name="id" type="xs:ID" use="required"/> </xs:complexType> </xs:element> <xs:element name="shop"> <xs:complexType> <xs:sequence> <xs:element ref="kategorie"/> <xs:element name="person" minOccurs="0" maxOccurs="unbounded"> <xs:complexType> <xs:sequence> <xs:element name="name" type="xs:string"/> <xs:element name="vorname" type="xs:string"/> <xs:element name="login" type="xs:string"/> <xs:element name="passwort" type="xs:string" minOccurs="0"/> <xs:element ref="artikel" minOccurs="0" maxOccurs="unbounded"/> <xs:element name="bestellung" minOccurs="0" maxOccurs="unbounded"> <xs:complexType> <xs:sequence> <xs:element name="posten" maxOccurs="unbounded"> <xs:complexType> <xs:attribute name="artikel" type="xs:IDREF" use="required"/> <xs:attribute name="anzahl" type="xs:integer" use="optional" default="1"/> <xs:attribute name="bestellung" type="xs:IDREF" use="required"/> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name="id" type="xs:ID" use="required"/> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name="id" type="xs:ID" use="required"/> <xs:attribute name="haendler" type="xs:boolean" use="optional" default="false"/> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name="id" type="xs:ID" use="optional"/> </xs:complexType> </xs:element> <xs:simpleType name="sprache"> <xs:restriction base="xs:language"> <xs:enumeration value="de"/> <xs:enumeration value="en"/> <xs:enumeration value="it"/> </xs:restriction> </xs:simpleType> <xs:element name="bezeichnung" type="sprach-element"/> <xs:complexType name="sprach-element"> <xs:sequence> <xs:element name="sprach-eintrag" maxOccurs="unbounded"> <xs:complexType> <xs:simpleContent> <xs:extension base="xs:string"> <xs:attribute name="sprache" type="sprache" use="optional" default="de"/> </xs:extension> </xs:simpleContent> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> <xs:simpleType name="wert-typ"> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="sprach-wert"/> <xs:enumeration value="zahl-wert"/> </xs:restriction> </xs:simpleType> </xs:schema>
