Uploaded image for project: 'MidPoint'
  1. MidPoint
  2. MID-3249

Error when object has extra extension attributes in repo

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 3.4 LTS (Heisenberg), 3.4.1
    • Fix Version/s: 3.6 (Comenius)
    • Component/s: None
    • Labels:
      None

      Description

      When object (user) has extension attribute in the repo and there is no schema for that attribute then there is an error:

      Raw value PPV(null, raw element: XNode(primitive:parser ValueParser(DOMe, {http://midpoint.evolveum.com/xml/ns/samples/extension-3}ssn: ssn2))) in item PP({http://midpoint.evolveum.com/xml/ns/samples/extension-3}ssn):[PPV(null, raw element: XNode(primitive:parser ValueParser(DOMe, {http://midpoint.evolveum.com/xml/ns/samples/extension-3}ssn: ssn2)))] (extension/ssn in user:1306ed03-dff1-4f51-aebc-2ca25483f6f0(jack))
      

      We should ignore such attributes.

      This also happens on respository object pages, so the problem cannot be readily fixed.

      This is likely to happen if a schema definition is deleted, but some objects still have the attributes.

        Issue Links

          Activity

          Hide
          mederly Pavol Mederly added a comment -

          Temporary workaround present in v3.5devel-31-g0bdb40f: such objects can be now fixed via "repository objects" page.

          Show
          mederly Pavol Mederly added a comment - Temporary workaround present in v3.5devel-31-g0bdb40f: such objects can be now fixed via "repository objects" page.
          Hide
          mederly Pavol Mederly added a comment -

          Probably fixed, but need to re-test.

          Show
          mederly Pavol Mederly added a comment - Probably fixed, but need to re-test.
          Hide
          mederly Pavol Mederly added a comment -

          Current behavior (3.6):

          1) When extension schema is present, but it does not contain extension attribute: there are warnings like this:

          2017-06-20 14:18:29,340 [] [http-apr-8080-exec-9] WARN (com.evolveum.midpoint.prism.marshaller.PrismUnmarshaller): Item {http://sample.evolveum.com/xml/ns/sample-idm/extension/activation}testInt has no definition (schema present, in container PCD:{.../common/common-3}extension {http://sample.evolveum.com/xml/ns/sample-idm/extension/activation}UserTypeExtensionType[0,1],dyn,RAM,runtime)while parsing (
            {http://sample.evolveum.com/xml/ns/sample-idm/extension/activation}testInt => 
              parser ValueParser(DOMe, {http://sample.evolveum.com/xml/ns/sample-idm/extension/activation}testInt: 123)
          )
          

          The object can be opened in main GUI and in repository objects, but it does not contain the extension item. (I.e. it has an empty extension container).

          2) When the extension schema is not present (it has different namespace URI or was deleted):

          The object cannot be opened in main GUI, with the following error:

          2017-06-20 14:20:29,171 [] [http-apr-8080-exec-4] ERROR (com.evolveum.midpoint.model.impl.controller.SchemaTransformer): Error post-processing object user:469fd663-4492-4c24-8ce3-3907df7ac7ec(bob): Raw value PPV([raw], raw element: XNode(primitive:parser ValueParser(DOMe, {http://sample.evolveum.com/xml/ns/sample-idm/extension/activation}testInt: 123))) in item PP({http://sample.evolveum.com/xml/ns/sample-idm/extension/activation}testInt):[PPV([raw], raw element: XNode(primitive:parser ValueParser(DOMe, {http://sample.evolveum.com/xml/ns/sample-idm/extension/activation}testInt: 123)))] (extension/testInt in user:469fd663-4492-4c24-8ce3-3907df7ac7ec(bob))
          java.lang.IllegalStateException: Raw value PPV([raw], raw element: XNode(primitive:parser ValueParser(DOMe, {http://sample.evolveum.com/xml/ns/sample-idm/extension/activation}testInt: 123))) in item PP({http://sample.evolveum.com/xml/ns/sample-idm/extension/activation}testInt):[PPV([raw], raw element: XNode(primitive:parser ValueParser(DOMe, {http://sample.evolveum.com/xml/ns/sample-idm/extension/activation}testInt: 123)))] (extension/testInt in user:469fd663-4492-4c24-8ce3-3907df7ac7ec(bob))
          	at com.evolveum.midpoint.prism.Item.checkConsistenceInternal(Item.java:739) ~[prism-3.6-SNAPSHOT.jar:na]
          	at com.evolveum.midpoint.prism.PrismContainerValue.checkConsistenceInternal(PrismContainerValue.java:1271) ~[prism-3.6-SNAPSHOT.jar:na]
          	at com.evolveum.midpoint.prism.Item.checkConsistenceInternal(Item.java:751) ~[prism-3.6-SNAPSHOT.jar:na]
          	at com.evolveum.midpoint.prism.PrismContainer.checkConsistenceInternal(PrismContainer.java:688) ~[prism-3.6-SNAPSHOT.jar:na]
          	at com.evolveum.midpoint.prism.PrismContainerValue.checkConsistenceInternal(PrismContainerValue.java:1271) ~[prism-3.6-SNAPSHOT.jar:na]
          	at com.evolveum.midpoint.prism.Item.checkConsistenceInternal(Item.java:751) ~[prism-3.6-SNAPSHOT.jar:na]
          	at com.evolveum.midpoint.prism.PrismContainer.checkConsistenceInternal(PrismContainer.java:688) ~[prism-3.6-SNAPSHOT.jar:na]
          	at com.evolveum.midpoint.prism.PrismObject.checkConsistenceInternal(PrismObject.java:409) ~[prism-3.6-SNAPSHOT.jar:na]
          	at com.evolveum.midpoint.prism.Item.checkConsistence(Item.java:713) ~[prism-3.6-SNAPSHOT.jar:na]
          	at com.evolveum.midpoint.model.impl.controller.SchemaTransformer.validateObject(SchemaTransformer.java:583) [model-impl-3.6-SNAPSHOT.jar:na]
          	at com.evolveum.midpoint.model.impl.controller.SchemaTransformer.applySchemasAndSecurity(SchemaTransformer.java:187) [model-impl-3.6-SNAPSHOT.jar:na]
          	at com.evolveum.midpoint.model.impl.controller.SchemaTransformer.applySchemaAndSecurityToObject(SchemaTransformer.java:163) [model-impl-3.6-SNAPSHOT.jar:na]
          	at com.evolveum.midpoint.model.impl.controller.SchemaTransformer.applySchemasAndSecurityToObjects(SchemaTransformer.java:113) [model-impl-3.6-SNAPSHOT.jar:na]
          	at com.evolveum.midpoint.model.impl.controller.ModelController.searchObjects(ModelController.java:853) [model-impl-3.6-SNAPSHOT.jar:na]
          	at com.evolveum.midpoint.web.component.data.SelectableBeanObjectDataProvider.internalIterator(SelectableBeanObjectDataProvider.java:154) [classes/:na]
          	at com.evolveum.midpoint.web.component.data.BaseSortableDataProvider.iterator(BaseSortableDataProvider.java:217) [classes/:na]
          	at org.apache.wicket.markup.repeater.data.DataViewBase$ModelIterator.<init>(DataViewBase.java:107) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.markup.repeater.data.DataViewBase.getItemModels(DataViewBase.java:74) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.markup.repeater.AbstractPageableView.getItemModels(AbstractPageableView.java:101) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.markup.repeater.RefreshingView.onPopulate(RefreshingView.java:93) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.markup.repeater.AbstractRepeater.onBeforeRender(AbstractRepeater.java:124) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.markup.repeater.AbstractPageableView.onBeforeRender(AbstractPageableView.java:115) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.Component.internalBeforeRender(Component.java:950) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.Component.beforeRender(Component.java:1018) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1836) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.Component.onBeforeRender(Component.java:3916) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.Component.internalBeforeRender(Component.java:950) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.Component.beforeRender(Component.java:1018) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1836) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.Component.onBeforeRender(Component.java:3916) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.Component.internalBeforeRender(Component.java:950) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.Component.beforeRender(Component.java:1018) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1836) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.Component.onBeforeRender(Component.java:3916) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.Component.internalBeforeRender(Component.java:950) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.Component.beforeRender(Component.java:1018) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1836) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.Component.onBeforeRender(Component.java:3916) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.Component.internalBeforeRender(Component.java:950) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.Component.beforeRender(Component.java:1018) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1836) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.Component.onBeforeRender(Component.java:3916) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.Component.internalBeforeRender(Component.java:950) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.Component.beforeRender(Component.java:1018) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1836) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.Component.onBeforeRender(Component.java:3916) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.markup.html.form.Form.onBeforeRender(Form.java:1809) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.Component.internalBeforeRender(Component.java:950) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.Component.beforeRender(Component.java:1018) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1836) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.Component.onBeforeRender(Component.java:3916) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.Component.internalBeforeRender(Component.java:950) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.Component.beforeRender(Component.java:1018) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1836) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.Component.onBeforeRender(Component.java:3916) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.markup.html.form.Form.onBeforeRender(Form.java:1809) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.Component.internalBeforeRender(Component.java:950) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.Component.beforeRender(Component.java:1018) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1836) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.Component.onBeforeRender(Component.java:3916) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.Page.onBeforeRender(Page.java:801) [wicket-core-7.6.0.jar:7.6.0]
          	at com.evolveum.midpoint.gui.api.page.PageBase.onBeforeRender(PageBase.java:533) [classes/:na]
          	at org.apache.wicket.Component.internalBeforeRender(Component.java:950) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.Component.beforeRender(Component.java:1018) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.Component.internalPrepareForRender(Component.java:2236) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.Page.internalPrepareForRender(Page.java:242) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.Component.render(Component.java:2325) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.Page.renderPage(Page.java:1018) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.request.handler.render.WebPageRenderer.renderPage(WebPageRenderer.java:124) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.request.handler.render.WebPageRenderer.respond(WebPageRenderer.java:236) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.core.request.handler.RenderPageRequestHandler.respond(RenderPageRequestHandler.java:175) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:895) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64) [wicket-request-7.6.0.jar:7.6.0]
          	at org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:97) [wicket-request-7.6.0.jar:7.6.0]
          	at org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:265) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:222) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:293) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.protocol.http.WicketFilter.processRequestCycle(WicketFilter.java:261) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:203) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:284) [wicket-core-7.6.0.jar:7.6.0]
          	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239) [catalina.jar:8.0.30]
          	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) [catalina.jar:8.0.30]
          	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:317) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE]
          	at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:127) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE]
          	at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:91) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE]
          	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE]
          	at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:115) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE]
          	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE]
          	at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:137) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE]
          	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE]
          	at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:112) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE]
          	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE]
          	at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:169) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE]
          	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE]
          	at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE]
          	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE]
          	at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilterInternal(BasicAuthenticationFilter.java:158) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE]
          	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) [spring-web-4.2.5.RELEASE.jar:4.2.5.RELEASE]
          	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE]
          	at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:206) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE]
          	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE]
          	at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:121) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE]
          	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE]
          	at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:56) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE]
          	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) [spring-web-4.2.5.RELEASE.jar:4.2.5.RELEASE]
          	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE]
          	at org.springframework.security.web.session.ConcurrentSessionFilter.doFilter(ConcurrentSessionFilter.java:134) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE]
          	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE]
          	at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:106) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE]
          	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE]
          	at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:214) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE]
          	at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:177) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE]
          	at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346) [spring-web-4.2.5.RELEASE.jar:4.2.5.RELEASE]
          	at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262) [spring-web-4.2.5.RELEASE.jar:4.2.5.RELEASE]
          	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239) [catalina.jar:8.0.30]
          	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) [catalina.jar:8.0.30]
          	at com.evolveum.midpoint.web.util.MidPointProfilingServletFilter.doFilter(MidPointProfilingServletFilter.java:86) [classes/:na]
          	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239) [catalina.jar:8.0.30]
          	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) [catalina.jar:8.0.30]
          	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:212) [catalina.jar:8.0.30]
          	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106) [catalina.jar:8.0.30]
          	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502) [catalina.jar:8.0.30]
          	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:141) [catalina.jar:8.0.30]
          	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79) [catalina.jar:8.0.30]
          	at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:616) [catalina.jar:8.0.30]
          	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88) [catalina.jar:8.0.30]
          	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:521) [catalina.jar:8.0.30]
          	at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1096) [tomcat-coyote.jar:8.0.30]
          	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:674) [tomcat-coyote.jar:8.0.30]
          	at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.doRun(AprEndpoint.java:2500) [tomcat-coyote.jar:8.0.30]
          	at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoint.java:2489) [tomcat-coyote.jar:8.0.30]
          	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [na:1.8.0_131]
          	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [na:1.8.0_131]
          	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) [tomcat-util.jar:8.0.30]
          	at java.lang.Thread.run(Thread.java:748) [na:1.8.0_131]
          

          But it can be opened via repository objects, and the flawed extension item is shown. (Which is advantageous in some cases!)

          My recommendations:

          1. The behavior should be unified, regardless of the kind of misconfiguration.
          2. Both approaches have their advantages and disadvantages.
          3. So I recommend the behavior to be configurable.

          Moving the issue to 3.7.

          Show
          mederly Pavol Mederly added a comment - Current behavior (3.6): 1) When extension schema is present, but it does not contain extension attribute: there are warnings like this: 2017-06-20 14:18:29,340 [] [http-apr-8080-exec-9] WARN (com.evolveum.midpoint.prism.marshaller.PrismUnmarshaller): Item {http: //sample.evolveum.com/xml/ns/sample-idm/extension/activation}testInt has no definition (schema present, in container PCD:{.../common/common-3}extension {http://sample.evolveum.com/xml/ns/sample-idm/extension/activation}UserTypeExtensionType[0,1],dyn,RAM,runtime) while parsing ( {http: //sample.evolveum.com/xml/ns/sample-idm/extension/activation}testInt => parser ValueParser(DOMe, {http: //sample.evolveum.com/xml/ns/sample-idm/extension/activation}testInt: 123) ) The object can be opened in main GUI and in repository objects, but it does not contain the extension item. (I.e. it has an empty extension container). 2) When the extension schema is not present (it has different namespace URI or was deleted): The object cannot be opened in main GUI, with the following error: 2017-06-20 14:20:29,171 [] [http-apr-8080-exec-4] ERROR (com.evolveum.midpoint.model.impl.controller.SchemaTransformer): Error post-processing object user:469fd663-4492-4c24-8ce3-3907df7ac7ec(bob): Raw value PPV([raw], raw element: XNode(primitive:parser ValueParser(DOMe, {http: //sample.evolveum.com/xml/ns/sample-idm/extension/activation}testInt: 123))) in item PP({http://sample.evolveum.com/xml/ns/sample-idm/extension/activation}testInt):[PPV([raw], raw element: XNode(primitive:parser ValueParser(DOMe, {http://sample.evolveum.com/xml/ns/sample-idm/extension/activation}testInt: 123)))] (extension/testInt in user:469fd663-4492-4c24-8ce3-3907df7ac7ec(bob)) java.lang.IllegalStateException: Raw value PPV([raw], raw element: XNode(primitive:parser ValueParser(DOMe, {http: //sample.evolveum.com/xml/ns/sample-idm/extension/activation}testInt: 123))) in item PP({http://sample.evolveum.com/xml/ns/sample-idm/extension/activation}testInt):[PPV([raw], raw element: XNode(primitive:parser ValueParser(DOMe, {http://sample.evolveum.com/xml/ns/sample-idm/extension/activation}testInt: 123)))] (extension/testInt in user:469fd663-4492-4c24-8ce3-3907df7ac7ec(bob)) at com.evolveum.midpoint.prism.Item.checkConsistenceInternal(Item.java:739) ~[prism-3.6-SNAPSHOT.jar:na] at com.evolveum.midpoint.prism.PrismContainerValue.checkConsistenceInternal(PrismContainerValue.java:1271) ~[prism-3.6-SNAPSHOT.jar:na] at com.evolveum.midpoint.prism.Item.checkConsistenceInternal(Item.java:751) ~[prism-3.6-SNAPSHOT.jar:na] at com.evolveum.midpoint.prism.PrismContainer.checkConsistenceInternal(PrismContainer.java:688) ~[prism-3.6-SNAPSHOT.jar:na] at com.evolveum.midpoint.prism.PrismContainerValue.checkConsistenceInternal(PrismContainerValue.java:1271) ~[prism-3.6-SNAPSHOT.jar:na] at com.evolveum.midpoint.prism.Item.checkConsistenceInternal(Item.java:751) ~[prism-3.6-SNAPSHOT.jar:na] at com.evolveum.midpoint.prism.PrismContainer.checkConsistenceInternal(PrismContainer.java:688) ~[prism-3.6-SNAPSHOT.jar:na] at com.evolveum.midpoint.prism.PrismObject.checkConsistenceInternal(PrismObject.java:409) ~[prism-3.6-SNAPSHOT.jar:na] at com.evolveum.midpoint.prism.Item.checkConsistence(Item.java:713) ~[prism-3.6-SNAPSHOT.jar:na] at com.evolveum.midpoint.model.impl.controller.SchemaTransformer.validateObject(SchemaTransformer.java:583) [model-impl-3.6-SNAPSHOT.jar:na] at com.evolveum.midpoint.model.impl.controller.SchemaTransformer.applySchemasAndSecurity(SchemaTransformer.java:187) [model-impl-3.6-SNAPSHOT.jar:na] at com.evolveum.midpoint.model.impl.controller.SchemaTransformer.applySchemaAndSecurityToObject(SchemaTransformer.java:163) [model-impl-3.6-SNAPSHOT.jar:na] at com.evolveum.midpoint.model.impl.controller.SchemaTransformer.applySchemasAndSecurityToObjects(SchemaTransformer.java:113) [model-impl-3.6-SNAPSHOT.jar:na] at com.evolveum.midpoint.model.impl.controller.ModelController.searchObjects(ModelController.java:853) [model-impl-3.6-SNAPSHOT.jar:na] at com.evolveum.midpoint.web.component.data.SelectableBeanObjectDataProvider.internalIterator(SelectableBeanObjectDataProvider.java:154) [classes/:na] at com.evolveum.midpoint.web.component.data.BaseSortableDataProvider.iterator(BaseSortableDataProvider.java:217) [classes/:na] at org.apache.wicket.markup.repeater.data.DataViewBase$ModelIterator.<init>(DataViewBase.java:107) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.markup.repeater.data.DataViewBase.getItemModels(DataViewBase.java:74) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.markup.repeater.AbstractPageableView.getItemModels(AbstractPageableView.java:101) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.markup.repeater.RefreshingView.onPopulate(RefreshingView.java:93) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.markup.repeater.AbstractRepeater.onBeforeRender(AbstractRepeater.java:124) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.markup.repeater.AbstractPageableView.onBeforeRender(AbstractPageableView.java:115) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.Component.internalBeforeRender(Component.java:950) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.Component.beforeRender(Component.java:1018) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1836) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.Component.onBeforeRender(Component.java:3916) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.Component.internalBeforeRender(Component.java:950) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.Component.beforeRender(Component.java:1018) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1836) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.Component.onBeforeRender(Component.java:3916) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.Component.internalBeforeRender(Component.java:950) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.Component.beforeRender(Component.java:1018) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1836) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.Component.onBeforeRender(Component.java:3916) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.Component.internalBeforeRender(Component.java:950) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.Component.beforeRender(Component.java:1018) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1836) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.Component.onBeforeRender(Component.java:3916) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.Component.internalBeforeRender(Component.java:950) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.Component.beforeRender(Component.java:1018) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1836) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.Component.onBeforeRender(Component.java:3916) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.Component.internalBeforeRender(Component.java:950) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.Component.beforeRender(Component.java:1018) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1836) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.Component.onBeforeRender(Component.java:3916) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.markup.html.form.Form.onBeforeRender(Form.java:1809) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.Component.internalBeforeRender(Component.java:950) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.Component.beforeRender(Component.java:1018) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1836) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.Component.onBeforeRender(Component.java:3916) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.Component.internalBeforeRender(Component.java:950) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.Component.beforeRender(Component.java:1018) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1836) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.Component.onBeforeRender(Component.java:3916) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.markup.html.form.Form.onBeforeRender(Form.java:1809) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.Component.internalBeforeRender(Component.java:950) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.Component.beforeRender(Component.java:1018) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1836) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.Component.onBeforeRender(Component.java:3916) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.Page.onBeforeRender(Page.java:801) [wicket-core-7.6.0.jar:7.6.0] at com.evolveum.midpoint.gui.api.page.PageBase.onBeforeRender(PageBase.java:533) [classes/:na] at org.apache.wicket.Component.internalBeforeRender(Component.java:950) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.Component.beforeRender(Component.java:1018) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.Component.internalPrepareForRender(Component.java:2236) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.Page.internalPrepareForRender(Page.java:242) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.Component.render(Component.java:2325) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.Page.renderPage(Page.java:1018) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.request.handler.render.WebPageRenderer.renderPage(WebPageRenderer.java:124) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.request.handler.render.WebPageRenderer.respond(WebPageRenderer.java:236) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.core.request.handler.RenderPageRequestHandler.respond(RenderPageRequestHandler.java:175) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:895) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64) [wicket-request-7.6.0.jar:7.6.0] at org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:97) [wicket-request-7.6.0.jar:7.6.0] at org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:265) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:222) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:293) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.protocol.http.WicketFilter.processRequestCycle(WicketFilter.java:261) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:203) [wicket-core-7.6.0.jar:7.6.0] at org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:284) [wicket-core-7.6.0.jar:7.6.0] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239) [catalina.jar:8.0.30] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) [catalina.jar:8.0.30] at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:317) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE] at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:127) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE] at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:91) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE] at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE] at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:115) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE] at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE] at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:137) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE] at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE] at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:112) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE] at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE] at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:169) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE] at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE] at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE] at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE] at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilterInternal(BasicAuthenticationFilter.java:158) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE] at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) [spring-web-4.2.5.RELEASE.jar:4.2.5.RELEASE] at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE] at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:206) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE] at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE] at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:121) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE] at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE] at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:56) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE] at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) [spring-web-4.2.5.RELEASE.jar:4.2.5.RELEASE] at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE] at org.springframework.security.web.session.ConcurrentSessionFilter.doFilter(ConcurrentSessionFilter.java:134) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE] at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE] at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:106) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE] at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE] at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:214) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE] at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:177) [spring-security-web-4.1.0.RELEASE.jar:4.1.0.RELEASE] at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346) [spring-web-4.2.5.RELEASE.jar:4.2.5.RELEASE] at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262) [spring-web-4.2.5.RELEASE.jar:4.2.5.RELEASE] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239) [catalina.jar:8.0.30] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) [catalina.jar:8.0.30] at com.evolveum.midpoint.web.util.MidPointProfilingServletFilter.doFilter(MidPointProfilingServletFilter.java:86) [classes/:na] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239) [catalina.jar:8.0.30] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) [catalina.jar:8.0.30] at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:212) [catalina.jar:8.0.30] at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106) [catalina.jar:8.0.30] at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502) [catalina.jar:8.0.30] at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:141) [catalina.jar:8.0.30] at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79) [catalina.jar:8.0.30] at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:616) [catalina.jar:8.0.30] at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88) [catalina.jar:8.0.30] at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:521) [catalina.jar:8.0.30] at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1096) [tomcat-coyote.jar:8.0.30] at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:674) [tomcat-coyote.jar:8.0.30] at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.doRun(AprEndpoint.java:2500) [tomcat-coyote.jar:8.0.30] at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoint.java:2489) [tomcat-coyote.jar:8.0.30] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [na:1.8.0_131] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [na:1.8.0_131] at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) [tomcat-util.jar:8.0.30] at java.lang. Thread .run( Thread .java:748) [na:1.8.0_131] But it can be opened via repository objects, and the flawed extension item is shown. (Which is advantageous in some cases!) My recommendations: The behavior should be unified, regardless of the kind of misconfiguration. Both approaches have their advantages and disadvantages. So I recommend the behavior to be configurable. Moving the issue to 3.7.
          Hide
          mederly Pavol Mederly added a comment -

          Heh, as for case #2: the object can be shown via debug pages, but cannot be fixed! So it should be fixed somehow for 3.6.

          Show
          mederly Pavol Mederly added a comment - Heh, as for case #2: the object can be shown via debug pages, but cannot be fixed! So it should be fixed somehow for 3.6.
          Hide
          mederly Pavol Mederly added a comment -

          v3.6devel-1590-g816c581:

          1. both cases #1 and #2 now behave the same: FATAL ERROR during normal processing, but such objects can be opened in debug pages
          2. and in debug pages, such objects can be manually fixed (because of raw mode)

          TODO: make this behavior more configurable; and perhaps provide some tools (bulk actions? special task handler?) to facilitate fixing such situations

          Show
          mederly Pavol Mederly added a comment - v3.6devel-1590-g816c581: both cases #1 and #2 now behave the same: FATAL ERROR during normal processing, but such objects can be opened in debug pages and in debug pages, such objects can be manually fixed (because of raw mode) TODO: make this behavior more configurable; and perhaps provide some tools (bulk actions? special task handler?) to facilitate fixing such situations

            People

            • Assignee:
              semancik Radovan Semancik
              Reporter:
              semancik Radovan Semancik
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: