Bonjour à tous
Je suis en train d'essayer d'intégrer un code pour valider un XML depuis un xsd
Le code, j'ai l'ai récupérer sur le site d'IBM : http://www.ibm.com/developerworks/xm....html#listing1
Donc j'imagine que ca devrait fonctionner
Voici le début du code
Je lui donne donc à manger mon xsd que voilà ( le début du moins )
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 import java.io.*; import javax.xml.transform.Source; import javax.xml.transform.stream.StreamSource; import javax.xml.validation.*; import org.xml.sax.SAXException; public class DocbookXSDCheck { public static void main(String[] args) throws SAXException, IOException { // 1. Lookup a factory for the W3C XML Schema language SchemaFactory factory = SchemaFactory.newInstance("http://www.w3.org/2001/XMLSchema"); // 2. Compile the schema. // Here the schema is loaded from a java.io.File, but you could use // a java.net.URL or a javax.xml.transform.Source instead. File schemaLocation = new File("/opt/xml/docbook/xsd/docbook.xsd"); Schema schema = factory.newSchema(schemaLocation); .......
Et là le programme se lance, et tourne pendant quelques secondes à vide ( genre 10 secondes) et me sort un message d'erreur fort peu sympathique
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
23
24
25
26
27
28
29
30
31 <?xml version="1.0" encoding="UTF-8"?> <!-- edited with XMLSpy v2006 rel. 3 sp2 (http://www.altova.com) by Philip Hoyer (Actividentity Inc) --> <schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:oath-pskc="http://www.openauthentication.org/OATH/2006/10/PSKC" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:oath-logo="http://www.openauthentication.org/OATH/2006/08/Logo" targetNamespace="http://www.openauthentication.org/OATH/2006/10/PSKC" elementFormDefault="qualified" attributeFormDefault="unqualified"> <import namespace="http://www.w3.org/2000/09/xmldsig#" schemaLocation="http://www.w3.org/TR/2002/REC-xmldsig-core-20020212/xmldsig-core-schema.xsd"/> <import namespace="http://www.openauthentication.org/OATH/2006/08/Logo" schemaLocation="http://www.openauthentication.org/OATH/2006/08/Logo/oath_logotype_v1.0.xsd"/> <complexType name="SecretContainerType"> <sequence> <element name="EncryptionMethod"> <complexType> <complexContent> <extension base="oath-pskc:EncryptionMethodType"/> </complexContent> </complexType> </element> <element name="DigestMethod"> <complexType> <complexContent> <extension base="oath-pskc:DigestMethodType"/> </complexContent> </complexType> </element> <element name="Device" type="oath-pskc:DeviceType" maxOccurs="unbounded"/> <element name="Signature" type="ds:SignatureType" minOccurs="0"/> </sequence> <attribute name="version" type="oath-pskc:VersionType" use="required"/> </complexType>
org.xml.sax.SAXParseException: src-resolve: Cannot resolve the name 'ds:SignatureType' to a(n) 'type definition' component.
J'ai cherché un peu partout sur le net ... et j'avoue que je n'ai pas trouvé de réponse à mon problème. D'ailleurs, je ne comprends pas trop ce qui lui pose problème ...
Si quelqu'un a une idée ... je suis prenneur !!
Partager