JAXB (Arquitectura Java™ para enlaces XML), también conocida como JSR-222, es una tecnología Java que proporciona una forma fácil y cómoda de correlacionar clases Java y esquemas XML para el desarrollo simplificado de servicios web. JAXB aprovecha la flexibilidad de los datos XML neutros de plataforma en las aplicaciones Java para enlazar esquemas XML con aplicaciones Java sin necesidad de un conocimiento experto en programación XML. Las herramientas que se incluyen en este entorno de trabajo implementan los estándares JAXB 2.0, 2.1 y 2.2.
JAXB es una tecnología de enlace de XML a Java que da soporte a la transformación entre objetos de esquema y objetos Java, así como entre documentos de instancia XML e instancias de objetos Java. JAXB está formado por una interfaz de programación de aplicaciones (API) de tiempo de ejecución y las herramientas correspondientes que simplifican el acceso a los documentos XML. JAXB también permite crear documentos XML que cumplen el esquema XML y lo validan. El servidor de aplicaciones da soporte al esquema W3C XML, tal como se define en la recomendación del esquema XML 1.0 (XSD parte 1 y 2).
Las clases y los artefactos anotados mediante JAXB contienen toda la información que necesita la API de tiempo de ejecución JAXB para procesar documentos de instancia XML. La API de tiempo de ejecución JAXB da soporte a la ordenación de objetos JAXB en XML y a la desordenación del documento XML de nuevo en instancias de clase JAXB. De manera opcional, puede utilizar JAXB para proporcionar una validación XML que obligue a los documentos XML entrantes y salientes a cumplir las restricciones XML definidas en el esquema XML.
JAXB es la tecnología de enlace de datos predeterminada que utilizan las herramientas JAX-WS (API de Java para servicios web XML) y es la implementación predeterminada en de este producto. Puede desarrollar objetos JAXB para su uso en las aplicaciones JAX-WS.
WebSphere Application Server Versión 7.0 da soporte a la especificación JAXB 2.1. JAX-WS 2.1 requiere JAXB 2.1 para el enlace de datos. JAXB 2.1 proporciona mejoras como, por ejemplo, el soporte de compilación mejorado, el soporte de la anotación @XMLSeeAlso y el soporte 1.0 de esquema completo. Con JAXB 2.1, puede configurar el compilador del esquema xjc de modo que no genere automáticamente clases nuevas para un esquema concreto. Del mismo modo, puede configurar el generador de esquemas schemagen para que no genere automáticamente un esquema nuevo. Esta mejora es útil cuando utiliza un esquema común y no desea que se genere un esquema nuevo. JAXB 2.1 también incluye la anotación @XMLSeeAlso, que permite a JAXB enlazar clases Java adicionales que de otro modo desconocería cuando se enlaza una clase Java con esta anotación. Esta anotación permite a JAXB detectar todas las clases que están potencialmente implicadas en la ordenación o desordenación, ya que no es siempre posible o práctico listar todas las subclases de una clase Java determinada. JAX-WS 2.1 también da soporte al uso de la anotación @XMLSeeAlso en una SEI (Service Endpoint Interface) o en un bean de implementación de servicio, para garantizar que se haga referencia a todas las clases en la anotación que se pasa a JAXB para su proceso.
Para obtener más información, consulte la especificación JSR-222 oficial: JSR-222: Java Architecture for XML Binding (JAXB) 2.0