[Design the new POJO MicroContainer] - Re: Imposed ordering of elements
by kabir.khan@jboss.com
If I annotate my classes with
| @XmlRootElement
| public class BeforeAdviceData extends AdviceData
|
| @XmlRootElement
| public class AdviceData extends AdviceOrInterceptorData
|
This passes
| @JBossXmlSchema(namespace="urn:jboss:aop-beans:1.0", elementFormDefault=XmlNsForm.QUALIFIED)
| @XmlRootElement(name="arraybind")
| @XmlType(propOrder= {})
| public class ArrayBindBeanMetaDataFactory extends AspectManagerAwareBeanMetaDataFactory
| {
| @XmlElements
| ({
| @XmlElement(name="advice", type=AdviceData.class)
| })
| public List<BaseInterceptorData> getInterceptors()
| {
| return interceptors;
| }
| }
|
and this passes
| @JBossXmlSchema(namespace="urn:jboss:aop-beans:1.0", elementFormDefault=XmlNsForm.QUALIFIED)
| @XmlRootElement(name="arraybind")
| @XmlType(propOrder= {})
| public class ArrayBindBeanMetaDataFactory extends AspectManagerAwareBeanMetaDataFactory
| {
| @XmlElements
| ({
| @XmlElement(name="advice", type=BeforeAdviceData.class)
| })
| public List<BaseInterceptorData> getInterceptors()
| {
| return interceptors;
| }
| }
|
but if I try to use both, I get the "Model group all may contain only elements!" error mentioned:
|
|
| | @JBossXmlSchema(namespace="urn:jboss:aop-beans:1.0", elementFormDefault=XmlNsForm.QUALIFIED)
| | @XmlRootElement(name="arraybind")
| | @XmlType(propOrder= {})
| | public class ArrayBindBeanMetaDataFactory extends AspectManagerAwareBeanMetaDataFactory
| | {
| | @XmlElements
| | ({
| | @XmlElement(name="advice", type=AdviceData.class),
| | @XmlElement(name="advice", type=BeforeAdviceData.class)
| | })
| | public List<BaseInterceptorData> getInterceptors()
| | {
| | return interceptors;
| | }
| | }
| |
View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4230034#4230034
Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=4230034
16 years, 11 months
[Design the new POJO MicroContainer] - Re: Imposed ordering of elements
by kabir.khan@jboss.com
AnnotationOverrideBeanMetaDataFactory passes if I annotate the class with @XmlType(propOrder={}) and the AbstractAnnotationBeanMetaDataFactory.getBeans() method with @XmlTransient.
A few more classes get through when I do this, but I get another error
| Caused by: org.jboss.xb.binding.JBossXBRuntimeException: Model group all may contain only elements!
| at org.jboss.aop.microcontainer.beans.metadata.ArrayBindBeanMetaDataFactory.interceptors
| at org.jboss.aop.microcontainer.beans.metadata.AOPDeployment.beanFactories
| at org.jboss.aop.microcontainer.beans.metadata.AOPDeployment
| at org.jboss.xb.builder.JBossXBNoSchemaBuilder.rethrowWithLocation(JBossXBNoSchemaBuilder.java:2018)
| at org.jboss.xb.builder.JBossXBNoSchemaBuilder.createRootElementBinding(JBossXBNoSchemaBuilder.java:346)
| at org.jboss.xb.builder.JBossXBNoSchemaBuilder.createRootElements(JBossXBNoSchemaBuilder.java:321)
| at org.jboss.xb.builder.JBossXBNoSchemaBuilder.build(JBossXBNoSchemaBuilder.java:232)
| at org.jboss.xb.builder.JBossXBBuilder.build(JBossXBBuilder.java:291)
| at org.jboss.xb.builder.JBossXBBuilder.build(JBossXBBuilder.java:181)
| at org.jboss.xb.builder.JBossXBBuilder.build(JBossXBBuilder.java:160)
| at org.jboss.xb.binding.resolver.AbstractMutableSchemaResolver.resolve(AbstractMutableSchemaResolver.java:261)
| at org.jboss.xb.binding.sunday.unmarshalling.SundayContentHandler.startElement(SundayContentHandler.java:274)
| at org.jboss.xb.binding.parser.sax.SaxJBossXBParser$DelegatingContentHandler.startElement(SaxJBossXBParser.java:401)
| at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source)
| at org.apache.xerces.xinclude.XIncludeHandler.startElement(Unknown Source)
| at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown Source)
| at org.apache.xerces.impl.XMLNSDocumentScannerImpl$NSContentDispatcher.scanRootElementHook(Unknown Source)
| at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
| at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
| at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
| at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
| at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
| at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
| at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
| at org.jboss.xb.binding.parser.sax.SaxJBossXBParser.parse(SaxJBossXBParser.java:173)
|
| @JBossXmlSchema(namespace="urn:jboss:aop-beans:1.0", elementFormDefault=XmlNsForm.QUALIFIED)
| @XmlRootElement(name="arraybind")
| @XmlType(propOrder= {})
| public class ArrayBindBeanMetaDataFactory extends AspectManagerAwareBeanMetaDataFactory
| {
|
| ...
| @Override
| @XmlTransient
| public List<BeanMetaData> getBeans()
| {
| ...
| }
|
| @XmlElements
| ({
| @XmlElement(name="advice", type=AdviceData.class),
| @XmlElement(name="around", type=AdviceData.class),
| @XmlElement(name="before", type=BeforeAdviceData.class),
| @XmlElement(name="after", type=AfterAdviceData.class),
| @XmlElement(name="throwing", type=ThrowingAdviceData.class),
| @XmlElement(name="finally", type=FinallyAdviceData.class),
| @XmlElement(name="interceptor-ref", type=InterceptorRefData.class),
| @XmlElement(name="stack-ref", type=StackRefData.class)
| })
| public List<BaseInterceptorData> getInterceptors()
| {
| return interceptors;
| }
|
| public void setInterceptors(List<BaseInterceptorData> interceptors)
| {
| this.interceptors = interceptors;
| }
| }
|
What does it mean?
View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4230019#4230019
Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=4230019
16 years, 11 months