"alesj" wrote :
| We need to update MC-AOP-int's xmls:
| -
http://hudson.qa.jboss.com/hudson/job/AOP%20MC%20Integration%20-%20No%20W...
| to follow the new strict order rules Alexey impounded.
The error for one of my tests is:
| Caused by: org.jboss.xb.binding.JBossXBRuntimeException:
{urn:jboss:aop-beans:1.0}class cannot appear in this posi
| tion. Expected content of {urn:jboss:aop-beans:1.0}mixin is sequence:
{urn:jboss:aop-beans:1.0}class? {urn:jboss:a
| op-beans:1.0}construction? {urn:jboss:aop-beans:1.0}interfaces?
| at
org.jboss.xb.binding.sunday.unmarshalling.SundayContentHandler.startElement(SundayContentHandler.java:4
| 94)
|
My schema is:
| <xsd:complexType name="mixinType">
| <xsd:annotation>
| <xsd:documentation>
| <![CDATA[
| A mixin within an interface introduction
| ]]>
| </xsd:documentation>
| </xsd:annotation>
| <xsd:all minOccurs="1" maxOccurs="1">
| <xsd:element name="interfaces" type="xsd:string"
minOccurs="1" maxOccurs="1" />
| <xsd:element name="class" type="xsd:string"
minOccurs="1" maxOccurs="1" />
| <xsd:element name="construction" type="xsd:string"
minOccurs="0" maxOccurs="1" />
| </xsd:all>
| <xsd:attribute name="transient" type="xsd:boolean"
use="optional"/>
| </xsd:complexType>
|
So I can only conclude that the order imposed is from the order of the setters in the
associated parser class, which truly sucks:
| public class MixinData
| {
| String mixin;
| boolean isTransient = true;
| String construction;
| String interfaces;
|
| public boolean getTransient()
| {
| return isTransient;
| }
|
| @XmlAttribute
| public void setTransient(boolean isTransient)
| {
| this.isTransient = isTransient;
| }
|
| public String getMixin()
| {
| return mixin;
| }
|
| @XmlElement(name="class")
| public void setMixin(String mixin)
| {
| this.mixin = mixin;
| }
|
| public String getConstruction()
| {
| return construction;
| }
|
| public void setConstruction(String construction)
| {
| this.construction = construction;
| }
|
| public String getInterfaces()
| {
| return interfaces;
| }
|
| public void setInterfaces(String interfaces)
| {
| this.interfaces = interfaces;
| }
| }
|
Is there some annotation that can be used on the class to get rid of this imposed
ordering?
View the original post :
http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4225096#...
Reply to the post :
http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&a...