2010-07-27 2 views
1

erreur SAX si StreamSource (FileInputStream) mais StreamSource (fichier) okproblème avec StreamSource FileInputStream vs fichier

Salut, j'ai rencontré un problème StreamSource lorsque le paramètre était FileInputStream. Lorsque le paramètre était Fichier, tout va bien.

public int initXSD (String xsdFile) { 

     // no error at all if File 
    Source schemaFile = new StreamSource(new File(xsdFile)); 

     // sax error at newSchema() if FileInputStream 
    Source schemaFile = new StreamSource(new FileInputStream(new File(xsdFile))); 

    SchemaFactory factory = SchemaFactory.newInstance(XMLConstants.W3C_XML_SCHEMA_NS_URI); 


    Schema schema = factory.newSchema(schemaFile); 
    validator = schema.newValidator(); 
    return 0; 
} 

dès que je l'ai changé la ligne de StreamSource prendre un FileInputStream:

Source schemaFile = new StreamSource(new FileInputStream(new File(xsdFile))); 

Je suis une erreur de sax à NouveauSchéma():

org.xml.sax.SAXParseException: src-resolve: Cannot resolve the name 's:ComplexObjectType' to a(n) 'type definition' component. 

Répondre

0
public int initXSD (String xsdFile) { 

    // no error at all if File 
    Source schemaFile = new StreamSource(new File(xsdFile)); 

    // sax error at newSchema() if FileInputStream 
    Source schemaFile = new StreamSource(new FileInputStream(new File(xsdFile))); 

    Schema schema = factory.newSchema(schemaFile); 
    validator = schema.newValidator(); 
    return 0; 
} 
Questions connexes