[Java/Xerces] XML Schema en document root *

Pagina: 1
Acties:

  • Alarmnummer
  • Registratie: Juli 2001
  • Laatst online: 09-07-2024
Ik heb een probleem bij het valideren met xerces van mijn xml bestand en ik zit hier al een paar uur naar te kijken. Volgens mij heb ik alles goed staan.

foutmelding:
code:
1
2
3
4
5
6
7
8
9
10
org.jdom.JDOMException: Error on line 5 of document file:/D:/Programming/MyProject/RootExpertSysteem/workingDir/endUserGuiConfig/lawgame2.xml: Document root element "endUserGuiConfig", must match DOCTYPE root "null".
    at org.jdom.input.SAXBuilder.build(SAXBuilder.java:296)
    at org.jdom.input.SAXBuilder.build(SAXBuilder.java:617)
    at org.jdom.input.SAXBuilder.build(SAXBuilder.java:599)
    at com.jph.expertSysteem.userInterface.xmlReader.XMLReader.readEndUserGuiConfig(XMLReader.java:38)
    at com.jph.expertSysteem.userInterface.Main.main(Main.java:30)
Caused by: org.xml.sax.SAXParseException: Document root element "endUserGuiConfig", must match DOCTYPE root "null".
    at org.apache.xerces.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1171)
    at org.jdom.input.SAXBuilder.build(SAXBuilder.java:287)
    ... 4 more

kop van xml bestand met regel nummer erbij
code:
1
2
3
4
5
6
7
8
9
10
11
1<?xml version="1.0" encoding="UTF-8"?>
2
3<endUserGuiConfig   xmlns="http://www.lawgame.com/endUserGuiConfig"
4                           xmlns:xsi="http://www.lawgame.com/endUserGuiConfig"
5                           xsi:schemaLocation="http://123.121.137.51/endUserGuiConfig.xsd">
6
7    <multiDatabaseCatalog>
8       <multiDatabase id="LawGame">
9           <url>file:endUserGuiConfig/asa.xml</url>
10      </multiDatabase>
11  </multiDatabaseCatalog>

en voor de lief hebbers een stukje van de xsd :)
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<xsd:schema  xmlns:xsd="http://www.w3.org/2001/XMLSchema"
                    targetNamespace="http://www.lawgame.com/endUserGuiConfig"
                    xmlns="http://www.lawgame.com/endUserGuiConfig"
                    elementFormDefault="qualified">

    <xsd:element name="multiDatabase" type="endUserGuiConfigType" />

    <xsd:complexType name="endUserGuiConfigType">
        <xsd:sequence>
            <xsd:element name="multiDatabaseCatalog"     type="multiDatabaseCatalogType"     minOccurs = "1"     maxOccurs = "1" />
            <xsd:element name="tableViewCatalog"        type="tableViewCatalogType"     minOccurs = "1" maxOccurs = "1" />
            <xsd:element name="soundCatalog"                type="soundCatalogType"          minOccurs = "1"     maxOccurs = "1" /> 
            <xsd:element name="subMenu"                 type="subMenuType"                   minOccurs = "1"     maxOccurs = "1" /> 
        </xsd:sequence>
        <xsd:attribute name="name" type="xsd:string" use="required" />
    </xsd:complexType>

  • Alarmnummer
  • Registratie: Juli 2001
  • Laatst online: 09-07-2024
Ik zie trouwens dat ik mijn parser niet goed 'opbouw' want ik stel met Xerces niets in met set feature. Ik zal hier eerst even naar kijken

  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
Ik heb zo geen idee.... Wel alvast je topic-titel wat uitgebreid :) .

Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment


  • Alarmnummer
  • Registratie: Juli 2001
  • Laatst online: 09-07-2024
Ik heb al een paar dingen gevonden die ik fout heb gedaan. Volgens mij zit de XML en het schema gebeuren wel goed, maar de JDOM aansluiting naar de parser niet. In JDom 0.7 kun je kiezen of je validatie aan of uit wilt zetten en dat wil ik natuurlijk dol graag aan hebben :) Maar deze validatie is alleen voor DTD en niet voor Schema`s. Ik probeer ergens op de CVS de 0.8 te krijgen want daarmee kan ik wel bij de SAXParser komen om daar in te stellen dat hij een schema bestand moet gebruiken om te valideren.

Die foutmelding komt dus omdat ik geen dtd opgeef.

  • Alarmnummer
  • Registratie: Juli 2001
  • Laatst online: 09-07-2024
heb de topic gevonden :)

http://lists.denveronline.net/lists/jdom-interest/2002-February/009528.html

maar nu nog de beta 8 :'( :'( *kan hem niet vinden op de cvs*

althans geen jar.. alleen losse source files... Of kan je die dingen in 1 slag downloaden?

  • Alarmnummer
  • Registratie: Juli 2001
  • Laatst online: 09-07-2024
Het probleem is gefixed :) Ik kan schema bestanden aanspreken vanuit JDOM (Xerces dus (is mijn parser).. maar JDOM heeft er wrapper omheen waardoor je geen eigenschappen in kon stellen :+ )

Je hebt gewoon JDOM 0.8 beta of hoger nodig.. Nu nog kijken of ik ergens die regelnummers vandaan kan halen en dan ben ik helemaal blij (is nodig om betere foutmeldingen te genereren).
Pagina: 1