Tengo un XmlJavaTypeAdapter
definido para cada excepción en mi jerarquía de excepciones. Yo uso un objeto contenedor para el cálculo de referencias de las excepciones de la siguiente manera: -@XmlJavaTypeAdapter w/Herencia
@XmlRootElement
public Wrapper<T extends BaseException> {
T exception;
}
Las excepciones: -
@XmlJavaTypeAdapter(BaseExceptionAdapter.class) {
public class BaseException extends RuntimeException {
}
@XmlJavaTypeAdapter(DerivedExceptionAdapter.class) {
public class DerivedException extends BaseException {
}
Cuando intento cálculo de referencias de un objeto envoltorio, JAXB por defecto siempre llama la BaseExceptionAdapter
incluso si el actual la excepción es de tipo DerivedException
. ¿Cómo puedo forzarlo a buscar el tipo de instancia de la excepción en lugar del tipo de referencia?
Solo para agregar, package-info
/jaxb.index
etc. están exceptuados.