Class JaxbDomHackImpl
java.lang.Object
com.evolveum.midpoint.prism.impl.marshaller.JaxbDomHackImpl
- All Implemented Interfaces:
JaxbDomHack
A set of ugly hacks that are needed for prism and "real" JAXB to coexist. We hate it be we need it.
This is a mix of DOM and JAXB code that allows the use of "any" methods on JAXB-generated objects.
Prism normally does not use of of that. But JAXB code (such as JAX-WS) can invoke it and therefore
it has to return correct DOM/JAXB elements as expected.
- Author:
- Radovan Semancik
-
Constructor Summary
ConstructorDescriptionJaxbDomHackImpl
(DomLexicalProcessor domLexicalProcessor, PrismContext prismContext) -
Method Summary
Modifier and TypeMethodDescription<IV extends PrismValue,
ID extends ItemDefinition<?>, C extends Containerable>
Item<IV,ID> parseRawElement
(Object element, PrismContainerDefinition<C> definition) This is used in a form of "fromAny" to parse elements from a JAXB getAny method to prism.toAny
(PrismValue value) Serializes prism value to JAXB "any" format as returned by JAXB getAny() methods.
-
Constructor Details
-
JaxbDomHackImpl
-
-
Method Details
-
parseRawElement
public <IV extends PrismValue,ID extends ItemDefinition<?>, Item<IV,C extends Containerable> ID> parseRawElement(Object element, PrismContainerDefinition<C> definition) throws SchemaException This is used in a form of "fromAny" to parse elements from a JAXB getAny method to prism.- Specified by:
parseRawElement
in interfaceJaxbDomHack
- Throws:
SchemaException
-
toAny
Serializes prism value to JAXB "any" format as returned by JAXB getAny() methods.- Specified by:
toAny
in interfaceJaxbDomHack
- Throws:
SchemaException
-