Salve a tutti ho il seguente codice per validare un documento xml attraverso una dtd/schemaxml.
ADESSO non capisco perchè non chiamare errore dato che nel mio documento XML,non c'ècodice:<%@ page language="Java" %> <%@ page import="org.w3c.dom.*"%> <%@ page import="org.apache.xerces.parsers.*" %> <%@ page import="org.xml.sax.*"%> <%@ page import="javax.xml.parsers.*" %> <%@ page import="javax.xml.transform.*"%> <%@ page import="javax.xml.transform.dom.DOMSource"%> <%@ page import="javax.xml.transform.stream.StreamResult"%> <%@ page import="java.io.*" %> <HEAD> <TITLE>Mia Risposta</TITLE> </HEAD> <BODY> <%! public class ValidatingDOM { // Costruttore public ValidatingDOM (String xmlFile) { DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); // force the parser to validate the document factory.setValidating(true); Document document = null; try { // builder initialisation DocumentBuilder builder = factory.newDocumentBuilder(); builder.setErrorHandler(null); // launch the parsing and create DOM structure document = builder.parse(xmlFile); } catch (Exception e) { e.printStackTrace(); } } } %> <% String xmlFile="C:/Windows/desktop/web/forum.xml"; ValidatingDOM validatingDOM = new ValidatingDOM (xmlFile); %> Mia pagina JSP</p> </BODY> </HTML> FORUM.XML: <?xml version="1.0"?> <!DOCTYPE forum SYSTEM "forum.dtd"> <forum> <post> <utente>Luca Ruggiero</utente> <localita>Roma</localita> <data>23/12/05</data> <messaggio>CIAO!!!!</messaggio> </post> </forum> FORUM.DTD: <!ELEMENT forum (post+)> <!ELEMENT post ( utente,titolo,localita,data, messaggio)> <!ELEMENT utente ( #PCDATA )> <!ELEMENT titolo ( #PCDATA )> <!ELEMENT localita ( #PCDATA )> <!ELEMENT data ( #PCDATA )> <!ELEMENT messaggio ( #PCDATA )>
il marcatore <titolo></titolo> è sbagliato qualcosa nel codice??Si valida così un documento
xml???GRAZIE

Rispondi quotando
