Bonjour

J'ai deux versions d'un petit programme Java qui effectue une transformation XSL.
La première utilise la classe java.xml.Transformer et tout se passe bien.

La deuxième utilise le Parser Oracle XML Java (fichier xmlparserv2.jar).
Voici le code:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
 
   ...
 
                String sInputXSL = "d:/xsl.xsl";
		String sInputXML = "d:/xml.xml";
 
		XMLDocument xslDoc = getDocumentFromFile(sInputXSL);
 
		XSLProcessor xslProcessor = new XSLProcessor();
 
		File fXsl = new File(sInputXSL);
		URL urlXsl = fXsl.toURI().toURL();
 
		xslProcessor.setBaseURL(urlXsl);
		xslProcessor.showWarnings(true);
		xslProcessor.setErrorStream(System.err);
 
		XSLStylesheet xslt = xslProcessor.newXSLStylesheet(xslDoc); (*)
 
		System.out.println("ok");
 
   ...
Lorsque la ligne (*) est exécutée, l'erreur suivante se produit:

XML-22050: (Error) Duplicate variable 'altova:table' definition.
XML-22050: (Error) Duplicate variable 'altova:table' definition.
XML-22050: (Error) Duplicate variable 'altova:table' definition.
XML-22050: (Error) Duplicate variable 'altova:table' definition.
oracle.xml.xslt.XSLException: XML-22050: (Error) Duplicate variable 'altova:table' definition.
at oracle.xml.xslt.XSLStylesheet.flushErrors(XSLStylesheet.java:1848)
at oracle.xml.xslt.XSLStylesheet.endContent(XSLStylesheet.java:397)
...

À quoi cela se doit-il?

Comment résoudre ce problème?

merci