Estoy usando JAXB (a través de un desastre de JaxWS y CXF) y tratando de ordenar el tipo BigDecimal en una cadena (número) e int (exponente) porque ahora tenemos una interfaz que no puede interpretar BigDecimal gracias a problemas de configuración regional .¿Cómo aplico globalmente un XmlAdapter a un programa JAXB?
Lo que estoy intentando es usar un XmlAdapter para convertir BigDecimal en mi propio tipo, BigDecimalUnScaled. Esto funciona bien siempre que coloque mi anotación @XmlJavaTypeAdapter directamente en el campo. Sin embargo, lo que realmente me gustaría hacer es ponerlo en la implementación de mi servicio web y aplicarlo globalmente a todos los BigDecimales sin tener que ordenar cada objeto devuelto. ¿Hay alguna manera de que pueda hacer esto?
E.g.
Interface DummyWebService
-- Get Return Object (Return object is a POJO with say an ID and a BigDecimal value)
Implementation default
-- No type annotation, uses default BigDecimal marshaller
Marshalled Implementation
-- XmlTypeAdapters implementation, should globally use BigDecimal
He intentado simplemente poner el adaptador en la implementación, pero no funciona.
¿Alguna idea?
Por lo que puedo ver, esto tampoco funcionará, ya que la información del paquete debe estar en la carpeta del objeto modelo, por lo que es aplicable a todas las instancias de mi servicio. Ponerlo en el paquete del servicio no funciona, ya lo intenté. – Andrew