So laden Sie externe Ressourcen mithilfe eines Referenz-URI in Java XML

9

Ich versuche, einen XML-Knoten aus einer URI-Referenz zu extrahieren. Diese URI-Referenz wird von einem XAdES4j-Unterzeichner generiert und kann auf einen Knoten innerhalb derselben XML-Datei oder im selben Ordner verweisen.

Ich hatte gehofft, dass das Laden der Referenz so einfach wäre wie

%Vor%

Aber das gibt mir nur eine NullPointerException ohne nützliche Nachricht. Beide Argumente sind nicht null, und in einem einfachen Fall war das URI-Attribut "data.xml" und der referenceDoc-Basis-URI war "/Users/ryan/.../test-files/signature.xml. Data.xml befindet sich in das gleiche Test-Dateien-Verzeichnis.

Der URI könnte auf ein Element innerhalb einer Datei verweisen, also hoffe ich, dass es einen Referenzlader gibt, der diese Komplexität für mich erledigt. Was habe ich verpasst?!

bearbeiten:

Die Referenz, die ich zu laden versuche, ist:

%Vor%     
spikeheap 04.11.2011, 12:04
quelle

2 Antworten

1

Total stab im Dunkeln (Sie müssen wirklich Stacktraces einfügen ...), aber hier geht.

Ich habe mir kurz die Quelle von ResourceResolver angesehen: Ссылка

Ich kann sehen, dass es eine NullPointerException aufgrund eines nicht initialisierten _resolverVector-Feldes im ResourceResolver geben wird, es sei denn, die statische init () -Methode wurde bereits in ResourceResolver aufgerufen. Oberhalb der Methode init () gibt es einen Kommentar:

%Vor%

Der ResourceResolver selbst scheint diesen Aufruf nicht auszulösen - machen Sie das? Wenn nicht, sollten Sie es versuchen, bevor Sie irgendeinen der org.apache.xml.security Sachen benutzen.

    
user467257 16.01.2012, 22:46
quelle
0

Zuerst müssen Sie verstehen, was genau die NullPointerException verursacht, daher würde ich vorschlagen, diesen Code aufzuteilen, damit Sie sehen können, wo der Nullwert ist.

    
Grouchal 15.11.2011 14:05
quelle