Class JAXBElementProvider

java.lang.Object
org.jboss.resteasy.plugins.providers.AbstractEntityProvider<T>
org.jboss.resteasy.plugins.providers.jaxb.AbstractJAXBProvider<jakarta.xml.bind.JAXBElement<?>>
org.jboss.resteasy.plugins.providers.jaxb.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 Details

    • JAXBElementProvider

      public JAXBElementProvider()
  • Method Details

    • isReadWritable

      protected boolean isReadWritable(Class<?> type, Type genericType, Annotation[] annotations, jakarta.ws.rs.core.MediaType mediaType)
      Specified by:
      isReadWritable in class AbstractJAXBProvider<jakarta.xml.bind.JAXBElement<?>>
    • 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
    • asyncWriteTo

      public CompletionStage<Void> asyncWriteTo(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, AsyncOutputStream outputStream)