With xstream 1.4.21 the serialization seems to got more strict. In our case, we use ChronicleMap to create a map of <BytesRef, Integer>. The xstream does not supply the converter of the Lucene's BytesRef object and hence the serialization fails. With a BytesRef xstream converter, ChronicleMap would still need to allow to pass the converters to the Xstream object created in JsonSerializer.putAll() through AbstractChronicleMap.putAll() which currently accepts only one argument. So, something like void putAll(File fromFile, final List<?> jsonConverters) throws IOException; is needed.
More details on our use case is on oracle/opengrok#4684
With xstream 1.4.21 the serialization seems to got more strict. In our case, we use ChronicleMap to create a map of
<BytesRef, Integer>. The xstream does not supply the converter of the Lucene'sBytesRefobject and hence the serialization fails. With aBytesRefxstream converter, ChronicleMap would still need to allow to pass the converters to theXstreamobject created inJsonSerializer.putAll()throughAbstractChronicleMap.putAll()which currently accepts only one argument. So, something likevoid putAll(File fromFile, final List<?> jsonConverters) throws IOException;is needed.More details on our use case is on oracle/opengrok#4684