2009-03-18 6 views
18

ich dies mit JAXB tue einige XML entordnen in Java-Objekte:JAXB gibt mir: java.lang.IllegalArgumentException: ist der Parameter nicht null sein muss

Mein Code ein wenig wie folgt aussieht:

InputStream testMsg = getClass().getResourceAsStream("TestDocumentEvent.xml"); 
Unmarshaller unmarshaller = JAXBContext.newInstance(DocumentEvent.class).createUnmarshaller(); 
DocumentEvent unmarshalled = (DocumentEvent) unmarshaller.unmarshal(testMsg); 

Allerdings, wenn ich diesen Code ausführen erhalte ich eine Ausnahme:

java.lang.IllegalArgumentException: is parameter must not be null 

Was ist los?

Antwort

22

Dies ist, weil die InputStream, die Sie an die Unmarshaller übergeben ('ist' Parameter, geddit) ist Null, überprüfen Sie, dass der Ressourcenname korrekt ist.

+2

Ich weiß, ich habe meine eigene Frage beantwortet. Ich fügte hinzu, weil es nicht viel auf Google über das und der Fehler ist nicht so leserlich – SCdF

+2

Ich weiß es nicht, es scheint ziemlich offensichtlich für mich - wenn der unmarshal Anruf sofort beschweren, dass sein Argument null ist, was unlesbar ist über das? –

+2

Sie sagen, dass "IS" die Abkürzung für "InputStream" in der Beschwerde ist? Ja, das ist ein wenig unklar, aber zumindest aus dem Kontext ist es leicht herauszufinden. – Eddie

Verwandte Themen