2015-12-03 5 views
0

Quelqu'un peut-il aider àJava SAXParser ne peut pas lire les fichiers XML importés dans le répertoire des ressources

J'ai un fichier XSD dans un répertoire appelé GML-XSD et en utilisant Netbeans 8.0.2 et à l'intérieur du code source-je utiliser une chaîne ce fichier

String gmlXSDFile = "etc/GML_XSD/epsg/EPSG.xsd"; 

le répertoire est le projet/GML-XSD/epsg/EPSG.xsd le problème est quand je construis le projet et l'exécuter sur Glassfish Server ou la jetée, il se plaint de ne peut pas trouver dossier etc. Comment puis-je corriger cela pour m'assurer qu'il va essayer de trouver "etc/GML_XSD" dans le fichier war mais pas dans le répertoire où il est déployé.

Merci.

Failed to read schema document 'file:/usr/local/ras/log/etc/GML_XSD/epsg/EPSG.xsd', because 1) could not find the document 

Edit: Code pour lire ce fichier (fonctionne pas)

Source[] sources = new StreamSource[1]; 
sources[0] = new StreamSource(new File(gmlXSDFile)); 

Edit: Nouveau code à l'intérieur image avec

String gmlXSDFile = "/GML/epsg/EPSG.xsd"; 

peut prendre en charge pour lire le fichier correctement EPSG.xsd, mais il ne peut pas importer d'autres fichiers xsd appartenant à d'autres paquets ci-dessous:

<import namespace="http://www.opengis.net/gml/3.2" schemaLocation="../gml/3.2.1/gml-3.2.1.xsd"/> 

Impossible de résoudre le nom 'GML: Définition' à un (n) composante 'déclaration d'élément'

enter image description here

+0

Fournissez le code dont vous lisez ou accédez au fichier –

+0

J'ai modifié cette lecture à partir d'un nouveau fichier. –

+0

L'erreur semble être une validation XML et non un échec de chargement de la ressource. Avez-vous la pile complète de cette eexception. –

Répondre

1

J'ai essayé beaucoup de manière et ne pouvait pas travailler, finalement je ve fait avec juste

URL schemaURL = Thread.currentThread().getContextClassLoader().getResource("GML/epsg/EPSG.xsd"); 


    Schema schema = factory.newSchema(schemaURL); 

et sans avoir besoin de créer un paquet de paquets ou de ressources qui ne peuvent rien aider. Je suis tellement heureux maintenant.