[midPoint-git] [Evolveum/midpoint] 302d5e: Fix MID-4465: extension delta serialization

Pavol Mederly mederly at evolveum.com
Tue Feb 27 16:40:46 CET 2018


  Branch: refs/heads/fix/mid-4465
  Home:   https://github.com/Evolveum/midpoint
  Commit: 302d5e0b659d7633ba306259f2dc5a518261067f
      https://github.com/Evolveum/midpoint/commit/302d5e0b659d7633ba306259f2dc5a518261067f
  Author: Pavol Mederly <mederly at evolveum.com>
  Date:   2018-02-27 (Tue, 27 Feb 2018)

  Changed paths:
    M infra/prism/src/main/java/com/evolveum/midpoint/prism/Definition.java
    M infra/prism/src/main/java/com/evolveum/midpoint/prism/DefinitionImpl.java
    M infra/prism/src/main/java/com/evolveum/midpoint/prism/PrismContainer.java
    M infra/prism/src/main/java/com/evolveum/midpoint/prism/PrismContainerDefinition.java
    M infra/prism/src/main/java/com/evolveum/midpoint/prism/PrismContainerDefinitionImpl.java
    M infra/prism/src/main/java/com/evolveum/midpoint/prism/PrismContainerValue.java
    M infra/prism/src/main/java/com/evolveum/midpoint/prism/PrismObjectDefinitionImpl.java
    M infra/prism/src/main/java/com/evolveum/midpoint/prism/marshaller/BeanMarshaller.java
    M infra/prism/src/main/java/com/evolveum/midpoint/prism/marshaller/JaxbDomHack.java
    M infra/prism/src/main/java/com/evolveum/midpoint/prism/marshaller/PrismMarshaller.java
    M infra/prism/src/main/java/com/evolveum/midpoint/prism/schema/DomToSchemaPostProcessor.java
    M infra/prism/src/main/java/com/evolveum/midpoint/prism/xml/XsdTypeMapper.java
    M infra/prism/src/main/java/com/evolveum/prism/xml/ns/_public/types_3/RawType.java
    M infra/prism/src/main/resources/xml/ns/test/foo-1.xsd
    M infra/prism/src/test/java/com/evolveum/midpoint/prism/PrismInternalTestUtil.java
    M infra/prism/src/test/java/com/evolveum/midpoint/prism/TestExtraSchema.java
    M infra/prism/src/test/java/com/evolveum/midpoint/prism/TestPrismContext.java
    M infra/prism/src/test/java/com/evolveum/midpoint/prism/TestPrismObjectConstruction.java
    M infra/prism/src/test/java/com/evolveum/midpoint/prism/TestPrismParsing.java
    R infra/prism/src/test/java/com/evolveum/midpoint/prism/foo/Extension.java
    A infra/prism/src/test/java/com/evolveum/midpoint/prism/foo/ExtensionType.java
    M infra/prism/src/test/java/com/evolveum/midpoint/prism/foo/ObjectFactory.java
    M infra/prism/src/test/java/com/evolveum/midpoint/prism/foo/ObjectType.java
    M infra/schema/src/main/java/com/evolveum/midpoint/schema/constants/SchemaConstants.java
    M infra/schema/src/test/java/com/evolveum/midpoint/schema/TestDeltaConverter.java
    M infra/schema/src/test/java/com/evolveum/midpoint/schema/TestJaxbConstruction.java
    M infra/schema/src/test/java/com/evolveum/midpoint/schema/TestSchemaRegistry.java
    M infra/schema/src/test/java/com/evolveum/midpoint/schema/TestSchemaSanity.java
    M infra/schema/src/test/java/com/evolveum/midpoint/schema/util/SchemaTestUtil.java
    A infra/schema/src/test/resources/schema/extension-as-a-type.xsd
    M model/model-intest/src/test/java/com/evolveum/midpoint/model/intest/TestTriggerTask.java
    M model/model-intest/src/test/java/com/evolveum/midpoint/model/intest/manual/AbstractDirectManualResourceTest.java
    M testing/story/src/test/java/com/evolveum/midpoint/testing/story/TestDelivery.java
    M testing/story/src/test/java/com/evolveum/midpoint/testing/story/TestStrings.java

  Log Message:
  -----------
  Fix MID-4465: extension delta serialization

For deltas referencing c:ExtensionType or its concrete substitutes
(like {...}UserExtensionType) the serializer produced xsi:type
attribute that caused deserialization to fail.

The solution is

1. to forbid producing explicitly typed XNodes if the type is runtime
(in prism serializer, bean serializer and in RawType serialization);

2. to change semantics of definition.isRuntimeSchema - now it is
true if and only if the definition itself is part of the runtime schema.
Not to be confused with isXsdAnyMarker and/or isDynamic!




More information about the midPoint-svn mailing list