2010-10-22 7 views
0

Nous essayons d'analyser un fichier XSD et de générer une feuille de propriétés à partir de celui-ci (en utilisant des beans XML).Obtention d'une exception lors de la compilation du schéma

Le code est le suivant:

 
    XmlObject xmlObj = XmlObject.Factory.parse(schema); 
    sts = XmlBeans.compileXsd(new XmlObject[] { xmlObj }, XmlBeans.getBuiltinTypeSystem(), null); 

Appel à compileXsd lance la une exception avec le message: L'entrée fourni de 0e est pas un document de schéma: son type est N =

Notre schéma ressemble à ceci:

 
    <schema xmlns:com.co.workflow="com.co.workflow" xmlns:org.data="org.data" targetNamespace="org.activity" version="1.0"> 
    <complexType class="org.activity.ExecuteCommand" name="executeCommand"> 
    <complexContent> 
    ... 
    ... 

trace de la pile:

 
The 0th supplied input is not a schema document: its type is N= 
    at org.apache.xmlbeans.impl.schema.SchemaTypeSystemCompiler.compile(SchemaTypeSystemCompiler.java:211) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 
    at java.lang.reflect.Method.invoke(Method.java:597) 
    at org.apache.xmlbeans.XmlBeans.compileXmlBeans(XmlBeans.java:667) 
    at org.apache.xmlbeans.XmlBeans.compileXsd(XmlBeans.java:553) 
     ...... 

Répondre

1

J'ai lu quelque part que l'objet passé à XmlBeans.compileXsd doit être une instance de SchemmaDocument. Alors essayez ceci: SchemaDocument.Factory.parse au lieu de XmlObject.Factory.parse

Questions connexes