Affects Version/s: 1.0.2
Fix Version/s: 1.0.3
Number of attachments :
We're having failures on code that used to work in 1.0-M1 in the way that XML mappings are handled.
When a Mapping object is loaded for a given mapping file, we cache that object and keep it for the runtime's lifetime, or until the file timestamp is changed out from under us.
To unmarshal, we do:
org.exolab.castor.xml.Unmarshaller unm = new org.exolab.castor.xml.Unmarshaller();
As you can see from the above code, we create a new Unmarshaller object, and set the mapping. That mapping object that we set never changes for instances of the same file; and we're getting failures on subsequent calls to that mapping object. The first time succeeds; the second time throws the above exception.
Note that it's created from a stream, and that stream is closed and gone. It mustn't be referenced again - yet somehow, it seems to want to reload itself each time.