Java: SAX-Schema-Validierung
-
12-12-2019 - |
Frage
Ich folge zwei Schemas. Master.xsd und child.xsd
- .
- child.xsd wird von der master.xsd importiert.
- Master-Datei hat ein Ziel-Namespace-Pub '.
- untergeordnete Datei kein solcher Namespace.
Wenn ich versuche, XML mit MASTER.XSD zu bestätigen, erhalte ich den Fehler
org.xml.sax.saxparseexception: SRC-Resolve: Der Name 'Author' 'Author' 'Komponente (N)' 'Element Deklaration' ist nicht aufgelöst.
Ich habe auch versucht, in master.xsd zu verwenden, diesmal erhalte ich einen ähnlichen Fehler:
org.xml.sax.saxparseexception: SRC-Resolve: Der Name 'PUB: Author' in A (N) 'Element Deklaration' Komponente kann nicht aufgelöst werden.
Wenn dies von XMLSPY erfolgreich validiert wird.
Hier sind die Schemas, den Anrufcode und der Validierungscode:
master.xsd
generasacodicetagpre.child.xsd
generasacodicetagpre.muster.xml, das validiert werden muss:
generasacodicetagpre.Java-Code zur Validierung:
generasacodicetagpre.Code-Code:
generasacodicetagpre.Bitte sag, wo ich schief gehe ??
Lösung 2
fixiert es durch Umsetzung von LSResourceresolver. Das Kind.XSD wurde nicht gefunden.
Schau für weitere Detials, https://stackoverflow.com/a/2342859/8422210
Andere Tipps
Ich würde mir vorstellen, dass Sie beide Schemas zur Verfügung stellen würden, also so etwas wie:
generasacodicetagpre.Alternativ können Sie dem Schemafactory ein benutzerdefiniertes LSResourceresolver bereitstellen.