Establecer el valor predeterminado para los campos que no están en XML en XStream

¿Hay alguna forma de crear un convertidor o alguna operación que se realice después de cada conversión? Para el contexto, estoy tratando de rellenar los valores predeterminados para los campos que no están en mi XML con el fin de mantener la compatibilidad hacia atrás si cambia mi modelo de datos. Por ejemplo, si tuviera este objeto:

class A {
    private String b;
    private String c;
    private String d;
}

y mi XML era algo como:

<a>
 <b>b</b>
 <d>d</d>
</a>

Quiero que mi importación del XML sepa que hay un valor predeterminado para el campoc es decir"c" y ponerlo enA como tal. Esta debería ser una operación genérica a la que puedo agregar valores predeterminados a cualquier campo de un gráfico muy complejo. Si hubiera alguna forma de activar una función después de cada conversión, podría comparar el objeto actual con un mapa de objetos en el que me gustaría establecer un valor predeterminado.

También tenga en cuenta que el uso de readResolve / readObject no parece ser una opción ya que 1. readObject () nunca pareció funcionar para mí en absoluto y 2. readResolve sobrescribiría el campo con el valor predeterminado, incluso si estuviera realmente incluido en el XML . Por favor, hágame saber si mis suposiciones aquí son erróneas.

Editar :: Encontré este hilo relacionado en la lista de correo del usuario:http://article.gmane.org/gmane.comp.java.xstream.user/4619/match=default+value

y parece que la única solución sugerida es usarreadResolve() Lo que ya dije no era una solución válida.

Respuestas a la pregunta(3)

Su respuesta a la pregunta