Class JAXBElementProvider

  • All Implemented Interfaces:
    jakarta.ws.rs.ext.MessageBodyReader<jakarta.xml.bind.JAXBElement<?>>, jakarta.ws.rs.ext.MessageBodyWriter<jakarta.xml.bind.JAXBElement<?>>, AsyncBufferedMessageBodyWriter<jakarta.xml.bind.JAXBElement<?>>, AsyncMessageBodyWriter<jakarta.xml.bind.JAXBElement<?>>

    @Provider
    @Produces({"application/xml","application/*+xml","text/xml","text/*+xml"})
    @Consumes({"application/xml","application/*+xml","text/xml","text/*+xml"})
    public class JAXBElementProvider
    extends AbstractJAXBProvider<jakarta.xml.bind.JAXBElement<?>>

    A JAXB Provider which handles parameter and return types of JAXBElement. This provider will be selected when the resource is declared as:

    @POST
    @Consumes("applictaion/xml")
    @Produces("applictaion/xml")
    public JAXBElement<Contact> getContact(JAXBElement<Contact> value);
    Version:
    $Revision:$
    Author:
    Ryan J. McDonough
    • Constructor Detail

      • JAXBElementProvider

        public JAXBElementProvider()
    • Method Detail

      • readFrom

        public jakarta.xml.bind.JAXBElement<?> readFrom​(Class<jakarta.xml.bind.JAXBElement<?>> type,
                                                        Type genericType,
                                                        Annotation[] annotations,
                                                        jakarta.ws.rs.core.MediaType mediaType,
                                                        jakarta.ws.rs.core.MultivaluedMap<String,​String> httpHeaders,
                                                        InputStream entityStream)
                                                 throws IOException
        Specified by:
        readFrom in interface jakarta.ws.rs.ext.MessageBodyReader<jakarta.xml.bind.JAXBElement<?>>
        Overrides:
        readFrom in class AbstractJAXBProvider<jakarta.xml.bind.JAXBElement<?>>
        Throws:
        IOException
      • writeTo

        public void writeTo​(jakarta.xml.bind.JAXBElement<?> t,
                            Class<?> type,
                            Type genericType,
                            Annotation[] annotations,
                            jakarta.ws.rs.core.MediaType mediaType,
                            jakarta.ws.rs.core.MultivaluedMap<String,​Object> httpHeaders,
                            OutputStream outputStream)
                     throws IOException
        Specified by:
        writeTo in interface jakarta.ws.rs.ext.MessageBodyWriter<jakarta.xml.bind.JAXBElement<?>>
        Overrides:
        writeTo in class AbstractJAXBProvider<jakarta.xml.bind.JAXBElement<?>>
        Throws:
        IOException