Package org.apache.cxf.jaxrs.provider
Class AbstractJAXBProvider<T>
java.lang.Object
org.apache.cxf.jaxrs.provider.AbstractConfigurableProvider
org.apache.cxf.jaxrs.provider.AbstractJAXBProvider<T>
- All Implemented Interfaces:
jakarta.ws.rs.ext.MessageBodyReader<T>,jakarta.ws.rs.ext.MessageBodyWriter<T>
- Direct Known Subclasses:
JAXBElementProvider
public abstract class AbstractJAXBProvider<T>
extends AbstractConfigurableProvider
implements jakarta.ws.rs.ext.MessageBodyReader<T>, jakarta.ws.rs.ext.MessageBodyWriter<T>
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected static classprotected static class -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected booleanprotected static final Stringprotected static final Stringprotected booleanprotected booleanFields inherited from class org.apache.cxf.jaxrs.provider.AbstractConfigurableProvider
BUNDLE, LOG -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected booleancanBeReadAsJaxbElement(Class<?> type) protected static ObjectcheckAdapter(Object obj, Class<?> cls, Annotation[] anns, boolean marshal) voidprotected XMLStreamReaderprotected ObjectconvertToJaxbElementIfNeeded(Object obj, Class<?> cls, Type genericType) protected XMLStreamReadercreateDepthReaderIfNeeded(XMLStreamReader reader, InputStream is) protected jakarta.xml.bind.MarshallercreateMarshaller(Object obj, Class<?> cls, Type genericType, String enc) protected XMLStreamReadercreateTransformReaderIfNeeded(XMLStreamReader reader, InputStream is) protected XMLStreamWritercreateTransformWriterIfNeeded(XMLStreamWriter writer, OutputStream os, boolean dropAtXmlLevel) protected jakarta.xml.bind.UnmarshallercreateUnmarshaller(Class<?> cls, Type genericType) protected jakarta.xml.bind.UnmarshallercreateUnmarshaller(Class<?> cls, Type genericType, boolean isCollection) protected Class<?>getActualType(Class<?> type, Type genericType, Annotation[] anns) jakarta.xml.bind.JAXBContextgetClassContext(Class<?> type) protected jakarta.xml.bind.JAXBContextgetClassContext(Class<?> type, Type genericType) protected jakarta.xml.bind.JAXBContextgetCollectionContext(Class<?> type) protected QNamegetCollectionWrapperQName(Class<?> cls, Type type, Object object, boolean pluralName) protected MessageContextprotected org.apache.cxf.staxutils.DocumentDepthPropertiesjakarta.xml.bind.JAXBContextgetJAXBContext(Class<?> type, Type genericType) protected Class<?>getJaxbElementClass(Class<?> cls) protected QNamegetJaxbQName(Class<?> cls, Type type, Object object, boolean pluralName) jakarta.xml.bind.JAXBContextgetPackageContext(Class<?> type) protected jakarta.xml.bind.JAXBContextgetPackageContext(Class<?> type, Type genericType) protected Schemaprotected SchemalonggetSize(T o, Class<?> type, Type genericType, Annotation[] annotations, jakarta.ws.rs.core.MediaType mt) protected <X> XgetStreamHandlerFromCurrentMessage(Class<X> staxCls) protected static voidhandleExceptionEnd(Throwable t, String message, boolean read) protected static StringBuilderprotected voidhandleJAXBException(jakarta.xml.bind.JAXBException e, boolean read) protected voidhandleXMLStreamException(XMLStreamException e, boolean read) voidinit(List<ClassResourceInfo> cris) Gives providers a chance to introspect the JAX-RS model classes.booleanisReadable(Class<?> type, Type genericType, Annotation[] anns, jakarta.ws.rs.core.MediaType mt) booleanprotected booleanisSupported(Class<?> type, Type genericType, Annotation[] anns) booleanisWriteable(Class<?> type, Type genericType, Annotation[] anns, jakarta.ws.rs.core.MediaType mt) protected booleanprotected booleanprotected booleanobjectFactoryOrIndexAvailable(Class<?> type) voidsetAttributesToElements(boolean value) voidsetCatalogLocation(String name) voidvoidsetCollectionWrapperName(String wName) protected voidsetContext(MessageContext context) voidsetContextProperties(Map<String, Object> contextProperties) voidsetDepthProperties(org.apache.cxf.staxutils.DocumentDepthProperties depthProperties) voidsetExtraClass(Class<?>[] userExtraClass) voidsetInAppendElements(Map<String, String> inElements) voidsetInDropElements(List<String> dropElementsSet) voidsetInTransformElements(Map<String, String> inElements) voidvoidsetJaxbElementClassNames(List<String> names) voidsetMarshallAsJaxbElement(boolean value) voidsetMarshallerListener(jakarta.xml.bind.Marshaller.Listener marshallerListener) protected static voidsetMarshallerProp(jakarta.xml.bind.Marshaller ms, Object value, String name1, String name2) protected voidsetNamespaceMapper(jakarta.xml.bind.Marshaller ms, Map<String, String> map) voidsetNamespaceMapperPropertyName(String namespaceMapperProperty) voidsetOutAppendElements(Map<String, String> map) voidsetOutDropElements(List<String> dropElementsSet) voidsetOutTransformElements(Map<String, String> outElements) protected voidvoidsetSchemaHandler(SchemaHandler handler) voidsetSchemaHandlers(Map<String, SchemaHandler> handlers) voidsetSchemaLocations(List<String> locations) voidsetSingleJaxbContext(boolean useSingleContext) voidsetSkipJaxbChecks(boolean skipJaxbChecks) voidsetUnmarshallAsJaxbElement(boolean value) voidsetUnmarshallerListener(jakarta.xml.bind.Unmarshaller.Listener unmarshallerListener) voidsetUnmarshallerProperties(Map<String, Object> unmarshalProperties) voidsetUseSingleContextForPackages(boolean use) voidsetValidateBeforeWrite(boolean validateBeforeWrite) voidsetValidateInput(boolean validateInput) voidsetValidateOutput(boolean validateOutput) voidsetValidationHandler(jakarta.xml.bind.ValidationEventHandler handler) voidsetXmlRootAsJaxbElement(boolean xmlRootAsJaxbElement) voidsetXmlTypeAsJaxbElementOnly(boolean value) protected voidvalidateObjectIfNeeded(jakarta.xml.bind.Marshaller marshaller, Class<?> cls, Object obj) voidwriteTo(T t, Type genericType, Annotation[] annotations, jakarta.ws.rs.core.MediaType mediaType, jakarta.ws.rs.core.MultivaluedMap<String, Object> httpHeaders, OutputStream entityStream) Methods inherited from class org.apache.cxf.jaxrs.provider.AbstractConfigurableProvider
getBus, getConsumeMediaTypes, getEnableBuffering, getEnableStreaming, getProduceMediaTypes, isPayloadEmpty, isPayloadEmpty, reportEmptyContentLength, setBus, setConsumeMediaTypes, setEnableBuffering, setEnableStreaming, setProduceMediaTypesMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface jakarta.ws.rs.ext.MessageBodyReader
readFromMethods inherited from interface jakarta.ws.rs.ext.MessageBodyWriter
writeTo
-
Field Details
-
NS_MAPPER_PROPERTY_RI
- See Also:
-
NS_MAPPER_PROPERTY_RI_INT
- See Also:
-
collectionContextClasses
-
jaxbElementClassMap
-
objectFactoryOrIndexMap
-
unmarshalAsJaxbElement
protected boolean unmarshalAsJaxbElement -
marshalAsJaxbElement
protected boolean marshalAsJaxbElement -
xmlTypeAsJaxbElementOnly
protected boolean xmlTypeAsJaxbElementOnly -
outElementsMap
-
outAppendMap
-
outDropElements
-
inDropElements
-
inElementsMap
-
inAppendMap
-
packageContexts
-
classContexts
-
-
Constructor Details
-
AbstractJAXBProvider
public AbstractJAXBProvider()
-
-
Method Details
-
setXmlRootAsJaxbElement
public void setXmlRootAsJaxbElement(boolean xmlRootAsJaxbElement) -
setNamespaceMapper
protected void setNamespaceMapper(jakarta.xml.bind.Marshaller ms, Map<String, String> map) throws Exception- Throws:
Exception
-
setMarshallerProp
protected static void setMarshallerProp(jakarta.xml.bind.Marshaller ms, Object value, String name1, String name2) throws Exception - Throws:
Exception
-
setValidationHandler
public void setValidationHandler(jakarta.xml.bind.ValidationEventHandler handler) -
setSingleJaxbContext
public void setSingleJaxbContext(boolean useSingleContext) -
setUseSingleContextForPackages
public void setUseSingleContextForPackages(boolean use) -
setExtraClass
-
init
Description copied from class:AbstractConfigurableProviderGives providers a chance to introspect the JAX-RS model classes. For example, the JAXB provider may use the model classes to create a single composite JAXBContext supporting all the JAXB-annotated root resource classes/types.- Overrides:
initin classAbstractConfigurableProvider
-
setContextProperties
-
setUnmarshallerProperties
-
setUnmarshallAsJaxbElement
public void setUnmarshallAsJaxbElement(boolean value) -
setMarshallAsJaxbElement
public void setMarshallAsJaxbElement(boolean value) -
setXmlTypeAsJaxbElementOnly
public void setXmlTypeAsJaxbElementOnly(boolean value) -
setJaxbElementClassNames
-
setJaxbElementClassMap
-
getStreamHandlerFromCurrentMessage
-
isXmlRoot
-
isXmlType
-
convertToJaxbElementIfNeeded
protected Object convertToJaxbElementIfNeeded(Object obj, Class<?> cls, Type genericType) throws Exception - Throws:
Exception
-
getJaxbElementClass
-
setCollectionWrapperName
-
setCollectionWrapperMap
-
setContext
-
isWriteable
public boolean isWriteable(Class<?> type, Type genericType, Annotation[] anns, jakarta.ws.rs.core.MediaType mt) - Specified by:
isWriteablein interfacejakarta.ws.rs.ext.MessageBodyWriter<T>
-
writeTo
public void writeTo(T t, Type genericType, Annotation[] annotations, jakarta.ws.rs.core.MediaType mediaType, jakarta.ws.rs.core.MultivaluedMap<String, Object> httpHeaders, OutputStream entityStream) throws IOException, jakarta.ws.rs.WebApplicationException- Throws:
IOExceptionjakarta.ws.rs.WebApplicationException
-
getCollectionContext
protected jakarta.xml.bind.JAXBContext getCollectionContext(Class<?> type) throws jakarta.xml.bind.JAXBException - Throws:
jakarta.xml.bind.JAXBException
-
getCollectionWrapperQName
protected QName getCollectionWrapperQName(Class<?> cls, Type type, Object object, boolean pluralName) throws Exception - Throws:
Exception
-
getJaxbQName
protected QName getJaxbQName(Class<?> cls, Type type, Object object, boolean pluralName) throws Exception - Throws:
Exception
-
isReadable
public boolean isReadable(Class<?> type, Type genericType, Annotation[] anns, jakarta.ws.rs.core.MediaType mt) - Specified by:
isReadablein interfacejakarta.ws.rs.ext.MessageBodyReader<T>
-
canBeReadAsJaxbElement
-
setSchemaLocations
-
setCatalogLocation
-
setSchemaHandler
-
setSchemaHandlers
-
setSchema
-
getSize
public long getSize(T o, Class<?> type, Type genericType, Annotation[] annotations, jakarta.ws.rs.core.MediaType mt) - Specified by:
getSizein interfacejakarta.ws.rs.ext.MessageBodyWriter<T>
-
getContext
-
getJAXBContext
public jakarta.xml.bind.JAXBContext getJAXBContext(Class<?> type, Type genericType) throws jakarta.xml.bind.JAXBException - Throws:
jakarta.xml.bind.JAXBException
-
getClassContext
public jakarta.xml.bind.JAXBContext getClassContext(Class<?> type) throws jakarta.xml.bind.JAXBException - Throws:
jakarta.xml.bind.JAXBException
-
getClassContext
protected jakarta.xml.bind.JAXBContext getClassContext(Class<?> type, Type genericType) throws jakarta.xml.bind.JAXBException - Throws:
jakarta.xml.bind.JAXBException
-
getPackageContext
-
getPackageContext
-
isSupported
-
objectFactoryOrIndexAvailable
-
createUnmarshaller
protected jakarta.xml.bind.Unmarshaller createUnmarshaller(Class<?> cls, Type genericType) throws jakarta.xml.bind.JAXBException - Throws:
jakarta.xml.bind.JAXBException
-
createUnmarshaller
protected jakarta.xml.bind.Unmarshaller createUnmarshaller(Class<?> cls, Type genericType, boolean isCollection) throws jakarta.xml.bind.JAXBException - Throws:
jakarta.xml.bind.JAXBException
-
createMarshaller
protected jakarta.xml.bind.Marshaller createMarshaller(Object obj, Class<?> cls, Type genericType, String enc) throws jakarta.xml.bind.JAXBException - Throws:
jakarta.xml.bind.JAXBException
-
validateObjectIfNeeded
protected void validateObjectIfNeeded(jakarta.xml.bind.Marshaller marshaller, Class<?> cls, Object obj) throws jakarta.xml.bind.JAXBException - Throws:
jakarta.xml.bind.JAXBException
-
getActualType
-
checkAdapter
-
getSchema
-
getSchema
-
clearContexts
public void clearContexts() -
handleExceptionStart
-
handleExceptionEnd
-
handleJAXBException
protected void handleJAXBException(jakarta.xml.bind.JAXBException e, boolean read) -
handleXMLStreamException
-
setOutTransformElements
-
setInAppendElements
-
setInTransformElements
-
setOutAppendElements
-
setOutDropElements
-
setInDropElements
-
setAttributesToElements
public void setAttributesToElements(boolean value) -
setSkipJaxbChecks
public void setSkipJaxbChecks(boolean skipJaxbChecks) -
isSkipJaxbChecks
public boolean isSkipJaxbChecks() -
createTransformWriterIfNeeded
protected XMLStreamWriter createTransformWriterIfNeeded(XMLStreamWriter writer, OutputStream os, boolean dropAtXmlLevel) -
createTransformReaderIfNeeded
-
createDepthReaderIfNeeded
-
configureReaderRestrictions
-
getDepthProperties
protected org.apache.cxf.staxutils.DocumentDepthProperties getDepthProperties() -
setValidateBeforeWrite
public void setValidateBeforeWrite(boolean validateBeforeWrite) -
setValidateOutput
public void setValidateOutput(boolean validateOutput) -
setValidateInput
public void setValidateInput(boolean validateInput) -
setDepthProperties
public void setDepthProperties(org.apache.cxf.staxutils.DocumentDepthProperties depthProperties) -
setUnmarshallerListener
public void setUnmarshallerListener(jakarta.xml.bind.Unmarshaller.Listener unmarshallerListener) -
setMarshallerListener
public void setMarshallerListener(jakarta.xml.bind.Marshaller.Listener marshallerListener) -
setNamespaceMapperPropertyName
-