Info |
---|
Warning |
This page is out of date. Please see https://docs.evolveum.com/midpoint/prism/ to get up-to-date information. |
Table of Contents |
---|
Prism Context
...
Unfortunately due to implementation limitations we have two classes that represent polystrings: PolyString
and PolyStringType
.
Class | Used in | Origin | Mnemonics |
---|---|---|---|
PolyString | Prism native interface (PrismProperty) | Manually written from scratch, part of prism core |
PolyStringType | Compile-time classes (UserType, etc.) | JAXB class (almost) generated from XSD | In UserType use PolyStringType |
The reason for this confusion is mostly caused by a limitation of JAXB framework. We are using JAXB framework to parse XSD schemas and generate compile-time classes. As the origin of all generated compile-time classes are in XSD definition also all of their property types must also have XSD definition. This includes PolyString. Although we have modified and customized significant part of JAXB we haven't found a way how to avoid this confusion.
...