bonjour

je travaille sur un fichier .xml qui est généré automatiquement par Magic Draw donc valide et qui correspondant à la description d'un WSDL diagramme.
(fichier .XMI), dont voici la partie qui pose un problème (le fichier est volumineux donc je ne peux pas mettre sa totalité)


Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
<xmi:XMI xmi:version='2.1' xmlns:uml='http://schema.omg.org/spec/UML/2.3' 
xmlns:xmi='http://schema.omg.org/spec/XMI/2.1' 
xmlns:UML_Profile_for_Java='http://www.magicdraw.com/schemas/UML_Profile_for_Java.xmi'
 xmlns:statements='http://www.magicdraw.com/schemas/statements.xmi'
xmlns:XML_Schema_Profile='http://www.magicdraw.com/schemas/XML_Schema_Profile.xmi' 
xmlns:Validation_Profile='http://www.magicdraw.com/schemas/Validation_Profile.xmi' 
xmlns:DSL_Customization='http://www.magicdraw.com/schemas/DSL_Customization.xmi' 
xmlns:Traceability_customization='http://www.magicdraw.com/schemas/Traceability_customization.xmi' 
xmlns:MagicDraw_Profile='http://www.magicdraw.com/schemas/MagicDraw_Profile.xmi' 
 xmlns:WSDL_Profile='http://www.magicdraw.com/schemas/WSDL_Profile.xmi' 
 xmlns:deployment='http://www.magicdraw.com/schemas/deployment.xmi' 
 xmlns:StandardProfileL2='http://schema.omg.org/spec/UML/2.3/StandardProfileL2.xmi' 
 xmlns:StandardProfileL3='http://schema.omg.org/spec/UML/2.3/StandardProfileL3.xmi'>

donc pour le charger dans un XMLDocument j'utilise ce bout de code :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
private static org.jdom.Document lectureFichier(String fileName)
	throws JDOMException, IOException
	{
	SAXBuilder sxb = new SAXBuilder();
	return sxb.build(new File(fileName));
	}
quand je l'exécute j'obtiens l'erreur suivante :

org.jdom.IllegalNameException: The name "XML_Schema_Profile" is not legal for JDOM/XML Namespace prefixs: Namespace prefixes cannot begin with "xml" in any combination of case.

at org.jdom.Namespace.getNamespace(Namespace.java:158)
at org.jdom.input.SAXHandler.startPrefixMapping(SAXHandler.java:498)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startNamespaceMapping(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl$NSContentDriver.scanRootElementHook(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
at org.jdom.input.SAXBuilder.build(SAXBuilder.java:489)
at org.jdom.input.SAXBuilder.build(SAXBuilder.java:847)
at org.jdom.input.SAXBuilder.build(SAXBuilder.java:826)
at exchange.XmlParser.lectureFichier(XmlParser.java:29)
at exchange.XmlParser.xmltosting(XmlParser.java:38)
at exchange.XmlParser.main(XmlParser.java:75)
org.jdom.input.JDOMParseException: Error on line 1: Premature end of file.
at org.jdom.input.SAXBuilder.build(SAXBuilder.java:504)
at org.jdom.input.SAXBuilder.build(SAXBuilder.java:807)
at exchange.XmlParser.readFromString(XmlParser.java:21)
at exchange.XmlParser.stringtoxml(XmlParser.java:55)
at exchange.XmlParser.main(XmlParser.java:75)
Caused by: org.xml.sax.SAXParseException: Premature end of file.

du coup, je n'arrive pas à le charger dans un xmlDocument et sachant que le fichier xml est valide et je ne peux pas changer dedans.

j'apprécierai votre aide et votre participation volontaire pour trouver la solution.

merci d'avance.