PDA

View Full Version : [XML -JAVA] Convalido rispetto a XMLSchema


jayb
21-03-2006, 17:15
Ho realizzato una funzione usando JDOM per la convalida dei file xml con i relativi schema e mi dà questo errore:

org.jdom.JDOMException: Failed to parse schema "c:/esempi/ValidaSchema/schemaes1.xsd": no validation engine available for: http://www.w3.org/2001/XMLSchema: no validation engine available for: http://www.w3.org/2001/XMLSchema

Il codice è:

public static void validate(Document document, String URIDelloSchema) throws DAOException{
try {
Schema schema = Schema.parse(URIDelloSchema, Schema.W3C_XML_SCHEMA);

System.out.println("parsing effettuato");
java.util.List errori = schema.validate(document);

if (errori != null) {
for (int i = 0; i < errori.size(); i++) {
ValidationError errore = (ValidationError) errori.get(i);
System.out.println(errore.getMessage());
}
}
}
catch (JDOMException ecc) {
throw new DAOException(ecc);
}
catch(java.io.IOException ioe){
System.out.println(ioe);
}
}

Ho notato che l'errore lo dà all'istruzione schema.validate(document).

La richiamo da un main:

public static void main(String[] args) {
try{
String path="esempio1.xml";
Document document=costruisciDOM(path);
System.out.println("DOM costruito");
String uri="c:/esempi/ValidaSchema/schemaes1.xsd";
validate(document,uri);
}catch(Exception ecc){
System.out.println(ecc);
}
}

Il document è corretto(la funzione CreaDOM l'ho testata), mentre ho un dubbio sull'uri.

Avete qualche suggerimento?
POTETE SUGGERIRMI UNA GUIDA A JDOM O UN LIBRO????
GRAZIE

texerasmo
21-03-2006, 17:29
prova qui a me funziona
http://www.javaportal.it/bv/jip.dll/portal/ep/contentSearchView.do?tabId=0&contentId=24712&contentType=EDITORIAL#sez1

jayb
22-03-2006, 12:28
prova qui a me funziona
http://www.javaportal.it/bv/jip.dll/portal/ep/contentSearchView.do?tabId=0&contentId=24712&contentType=EDITORIAL#sez1


Con questo codice mi dà quest'errore:
org.xml.sax.SAXParseException: Document is invalid: no grammar found.

Puoi aiutarmi?

texerasmo
22-03-2006, 13:11
prova

a sostiuire
Document document = new Document(root);

con

Document documento = new Document(root);

jayb
22-03-2006, 14:52
prova

a sostiuire
Document document = new Document(root);

con

Document documento = new Document(root);


Scusa dove lo devo sostituire?

texerasmo
22-03-2006, 15:31
/** CREIAMO UN DOCUMENT XML PRENDENDO
COME SOURCE IL NOSTRO FILE
/**/
Document document = parser.getDocument();

jayb
23-03-2006, 15:03
Nessun risultato:
L'errore è:
Error: org.xml.sax.SAXParseException: Document is invalid: no grammar found.
Error: org.xml.sax.SAXParseException: Document root element "questionario", must match DOCTYPE root "null".

Qualcuno Può aiutarmi???

texerasmo
24-03-2006, 10:53
tu hai seguito passo passo...

prova tutti e tre gli esercizi.



controlla il tuo xml
in quel codice java c'è solo un errore


a sostiuire
Document document = new Document(root);

con

Document documento = new Document(root);


Hai provato ti funzionano?

LeggiXML.java
CreaXML.java
ModificaXML.java

jayb
24-03-2006, 11:55
tu hai seguito passo passo...

prova tutti e tre gli esercizi.



controlla il tuo xml
in quel codice java c'è solo un errore


a sostiuire
Document document = new Document(root);

con

Document documento = new Document(root);


Hai provato ti funzionano?

LeggiXML.java
CreaXML.java
ModificaXML.java

Gli altri funzionano tutti, li ho fatti con jdom, dom e sax. Solo questo non và.
L'xml e lo schema sono corretti, l'ho anche verificati con XMLSpy.
Cmq grazie, se avete qualche novità avvertitemi.