Uploaded image for project: 'AppFormer'
  1. AppFormer
  2. AF-2927

Can't upgrade pre 7.60.0 Business Central with existing spaces

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Major Major
    • None
    • 7.60.0.Final
    • Security
    • None
    • NEW
    • NEW

      AF-2760 changes the class org.guvnor.structure.contributors.Contributor/Type to 

      org.uberfire.security.Contributor/Type

      These are martialled into niogit/{spacename}/.config/config.git -> config/SpaceInfo.json

      If BC is started with existing spaces, the following log messages are produced and BC fails to start:

       

      2021-12-22 02:34:54,733 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-7) MSC000001: Failed to start service jboss.deployment.unit."business-central.war".WeldStartService: org.jboss.msc.service.StartException in service jboss.deployment.unit."business-central.war".WeldStartService: Failed to start service

              at org.jboss.msc@1.4.13.Final//org.jboss.msc.service.ServiceControllerImpl$StartTask.execute(ServiceControllerImpl.java:1731)

              at org.jboss.msc@1.4.13.Final//org.jboss.msc.service.ServiceControllerImpl$ControllerTask.run(ServiceControllerImpl.java:1559)

              at org.jboss.threads@2.4.0.Final//org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)

              at org.jboss.threads@2.4.0.Final//org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:1990)

              at org.jboss.threads@2.4.0.Final//org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1486)

              at org.jboss.threads@2.4.0.Final//org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1377)

              at java.base/java.lang.Thread.run(Thread.java:829)

      Caused by: org.jboss.weld.exceptions.DeploymentException: WELD-000049: Unable to invoke void org.kie.workbench.common.screens.archetype.mgmt.backend.service.ArchetypeServiceImpl.postConstruct() on org.kie.workbench.common.screens.archetype.mgmt.backend.service.ArchetypeServiceImpl@2584a867

              at org.jboss.weld.core@3.1.8.Final//org.jboss.weld.bootstrap.events.AbstractDeploymentContainerEvent.fire(AbstractDeploymentContainerEvent.java:38)

              at org.jboss.weld.core@3.1.8.Final//org.jboss.weld.bootstrap.events.AfterDeploymentValidationImpl.fire(AfterDeploymentValidationImpl.java:28)

              at org.jboss.weld.core@3.1.8.Final//org.jboss.weld.bootstrap.WeldStartup.validateBeans(WeldStartup.java:510)

              at org.jboss.weld.core@3.1.8.Final//org.jboss.weld.bootstrap.WeldBootstrap.validateBeans(WeldBootstrap.java:93)

              at org.jboss.as.weld@26.0.0.Final//org.jboss.as.weld.WeldStartService.start(WeldStartService.java:98)

              at org.jboss.msc@1.4.13.Final//org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1739)

              at org.jboss.msc@1.4.13.Final//org.jboss.msc.service.ServiceControllerImpl$StartTask.execute(ServiceControllerImpl.java:1701)

              ... 6 more

      Caused by: org.jboss.weld.exceptions.WeldException: WELD-000049: Unable to invoke void org.kie.workbench.common.screens.archetype.mgmt.backend.service.ArchetypeServiceImpl.postConstruct() on org.kie.workbench.common.screens.archetype.mgmt.backend.service.ArchetypeServiceImpl@2584a867

              at org.jboss.weld.core@3.1.8.Final//org.jboss.weld.injection.producer.DefaultLifecycleCallbackInvoker.invokeMethods(DefaultLifecycleCallbackInvoker.java:85)

              at org.jboss.weld.core@3.1.8.Final//org.jboss.weld.injection.producer.DefaultLifecycleCallbackInvoker.postConstruct(DefaultLifecycleCallbackInvoker.java:66)

              at org.jboss.weld.core@3.1.8.Final//org.jboss.weld.injection.producer.BasicInjectionTarget.postConstruct(BasicInjectionTarget.java:122)

              at org.jboss.weld.core@3.1.8.Final//org.jboss.weld.bean.ManagedBean.create(ManagedBean.java:174)

              at org.jboss.weld.core@3.1.8.Final//org.jboss.weld.contexts.AbstractContext.get(AbstractContext.java:96)

              at org.jboss.weld.core@3.1.8.Final//org.jboss.weld.bean.ContextualInstanceStrategy$DefaultContextualInstanceStrategy.get(ContextualInstanceStrategy.java:100)

              at org.jboss.weld.core@3.1.8.Final//org.jboss.weld.bean.ContextualInstanceStrategy$ApplicationScopedContextualInstanceStrategy.get(ContextualInstanceStrategy.java:140)

              at org.jboss.weld.core@3.1.8.Final//org.jboss.weld.bean.ContextualInstance.get(ContextualInstance.java:50)

              at org.jboss.weld.core@3.1.8.Final//org.jboss.weld.bean.proxy.ContextBeanInstance.getInstance(ContextBeanInstance.java:102)

              at org.jboss.weld.core@3.1.8.Final//org.jboss.weld.bean.proxy.ProxyMethodHandler.getInstance(ProxyMethodHandler.java:131)

              at deployment.business-central.war//org.kie.workbench.common.screens.archetype.mgmt.backend.service.ArchetypeServiceImpl$Proxy$_$$_WeldClientProxy.toString(Unknown Source)

              at deployment.business-central.war//org.uberfire.backend.server.cdi.SystemConfigProducer.runPostConstruct(SystemConfigProducer.java:196)

              at deployment.business-central.war//org.uberfire.backend.server.cdi.SystemConfigProducer.afterDeploymentValidation(SystemConfigProducer.java:181)

              at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

              at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

              at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

              at java.base/java.lang.reflect.Method.invoke(Method.java:566)

              at org.jboss.weld.core@3.1.8.Final//org.jboss.weld.injection.StaticMethodInjectionPoint.invoke(StaticMethodInjectionPoint.java:95)

              at org.jboss.weld.core@3.1.8.Final//org.jboss.weld.injection.MethodInvocationStrategy$SpecialParamPlusBeanManagerStrategy.invoke(MethodInvocationStrategy.java:187)

              at org.jboss.weld.core@3.1.8.Final//org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:330)

              at org.jboss.weld.core@3.1.8.Final//org.jboss.weld.event.ExtensionObserverMethodImpl.sendEvent(ExtensionObserverMethodImpl.java:123)

              at org.jboss.weld.core@3.1.8.Final//org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:308)

              at org.jboss.weld.core@3.1.8.Final//org.jboss.weld.event.ObserverMethodImpl.notify(ObserverMethodImpl.java:286)

              at javax.enterprise.api//javax.enterprise.inject.spi.ObserverMethod.notify(ObserverMethod.java:124)

              at org.jboss.weld.core@3.1.8.Final//org.jboss.weld.util.Observers.notify(Observers.java:166)

              at org.jboss.weld.core@3.1.8.Final//org.jboss.weld.event.ObserverNotifier.notifySyncObservers(ObserverNotifier.java:285)

              at org.jboss.weld.core@3.1.8.Final//org.jboss.weld.event.ObserverNotifier.notify(ObserverNotifier.java:273)

              at org.jboss.weld.core@3.1.8.Final//org.jboss.weld.event.ObserverNotifier.fireEvent(ObserverNotifier.java:177)

              at org.jboss.weld.core@3.1.8.Final//org.jboss.weld.event.ObserverNotifier.fireEvent(ObserverNotifier.java:171)

              at org.jboss.weld.core@3.1.8.Final//org.jboss.weld.bootstrap.events.AbstractContainerEvent.fire(AbstractContainerEvent.java:53)

              at org.jboss.weld.core@3.1.8.Final//org.jboss.weld.bootstrap.events.AbstractDeploymentContainerEvent.fire(AbstractDeploymentContainerEvent.java:35)

              ... 12 more

      Caused by: java.lang.reflect.InvocationTargetException

              at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

              at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

              at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

              at java.base/java.lang.reflect.Method.invoke(Method.java:566)

              at org.jboss.weld.core@3.1.8.Final//org.jboss.weld.injection.producer.DefaultLifecycleCallbackInvoker.invokeMethods(DefaultLifecycleCallbackInvoker.java:83)

              ... 42 more

      Caused by: java.lang.RuntimeException: org.jboss.errai.marshalling.client.api.exceptions.MarshallingException: Failed to demarshall an instance of org.guvnor.structure.organizationalunit.config.SpaceInfo

              at deployment.business-central.war//org.uberfire.backend.server.io.object.ObjectStorageImpl.read(ObjectStorageImpl.java:68)

              at deployment.business-central.war//org.guvnor.structure.backend.organizationalunit.config.SpaceConfigStorageImpl.loadSpaceInfo(SpaceConfigStorageImpl.java:295)

              at deployment.business-central.war//org.guvnor.structure.backend.organizationalunit.config.SpaceConfigStorageImpl.isInitialized(SpaceConfigStorageImpl.java:322)

              at deployment.business-central.war//org.guvnor.structure.backend.organizationalunit.OrganizationalUnitServiceImpl.getAllOrganizationalUnits(OrganizationalUnitServiceImpl.java:204)

              at deployment.business-central.war//org.guvnor.structure.backend.organizationalunit.OrganizationalUnitServiceImpl$Proxy$_$$_WeldClientProxy.getAllOrganizationalUnits(Unknown Source)

              at deployment.business-central.war//org.kie.workbench.common.screens.archetype.mgmt.backend.service.ArchetypeServiceImpl.isArchetypesOUAvailable(ArchetypeServiceImpl.java:728)

              at deployment.business-central.war//org.kie.workbench.common.screens.archetype.mgmt.backend.service.ArchetypeServiceImpl.maybeCreateArchetypesOU(ArchetypeServiceImpl.java:695)

              at deployment.business-central.war//org.kie.workbench.common.screens.archetype.mgmt.backend.service.ArchetypeServiceImpl.postConstruct(ArchetypeServiceImpl.java:167)

              ... 47 more

      Caused by: org.jboss.errai.marshalling.client.api.exceptions.MarshallingException: Failed to demarshall an instance of org.guvnor.structure.organizationalunit.config.SpaceInfo

              at deployment.business-central.war//org.jboss.errai.marshalling.server.marshallers.DefaultDefinitionMarshaller.demarshall(DefaultDefinitionMarshaller.java:180)

              at deployment.business-central.war//org.jboss.errai.marshalling.client.marshallers.ObjectMarshaller.demarshall(ObjectMarshaller.java:88)

              at deployment.business-central.war//org.jboss.errai.marshalling.client.marshallers.ObjectMarshaller.doNotNullDemarshall(ObjectMarshaller.java:112)

              at deployment.business-central.war//org.jboss.errai.marshalling.client.marshallers.AbstractNullableMarshaller.demarshall(AbstractNullableMarshaller.java:35)

              at deployment.business-central.war//org.jboss.errai.marshalling.client.Marshalling.fromJSON(Marshalling.java:277)

              at deployment.business-central.war//org.jboss.errai.marshalling.client.Marshalling.fromJSON(Marshalling.java:249)

              at deployment.business-central.war//org.jboss.errai.marshalling.client.Marshalling.fromJSON(Marshalling.java:200)

              at deployment.business-central.war//org.jboss.errai.marshalling.client.Marshalling.fromJSON(Marshalling.java:319)

              at deployment.business-central.war//org.uberfire.backend.server.io.object.ObjectStorageImpl.read(ObjectStorageImpl.java:65)

              ... 54 more

      Caused by: java.lang.RuntimeException: no marshaller for type: org.guvnor.structure.contributors.Contributor

              at deployment.business-central.war//org.jboss.errai.marshalling.client.marshallers.AbstractCollectionMarshaller.marshallToCollection(AbstractCollectionMarshaller.java:87)

              at deployment.business-central.war//org.jboss.errai.marshalling.client.marshallers.ListMarshaller.doDemarshall(ListMarshaller.java:47)

              at deployment.business-central.war//org.jboss.errai.marshalling.client.marshallers.ListMarshaller.doDemarshall(ListMarshaller.java:34)

              at deployment.business-central.war//org.jboss.errai.marshalling.client.marshallers.AbstractCollectionMarshaller.doDemarshall(AbstractCollectionMarshaller.java:48)

              at deployment.business-central.war//org.jboss.errai.marshalling.client.marshallers.AbstractCollectionMarshaller.doDemarshall(AbstractCollectionMarshaller.java:33)

              at deployment.business-central.war//org.jboss.errai.marshalling.client.marshallers.AbstractBackReferencingMarshaller.demarshall(AbstractBackReferencingMarshaller.java:76)

              at deployment.business-central.war//org.jboss.errai.marshalling.client.marshallers.ObjectMarshaller.demarshall(ObjectMarshaller.java:88)

              at deployment.business-central.war//org.jboss.errai.marshalling.client.marshallers.ObjectMarshaller.doNotNullDemarshall(ObjectMarshaller.java:112)

              at deployment.business-central.war//org.jboss.errai.marshalling.client.marshallers.AbstractNullableMarshaller.demarshall(AbstractNullableMarshaller.java:35)

              at deployment.business-central.war//org.jboss.errai.marshalling.server.marshallers.DefaultDefinitionMarshaller.demarshall(DefaultDefinitionMarshaller.java:127)

              ... 62 more

       

      To work around you can either revert AF-2760 from appformer and kie-wb-common or update the martialled json:

       

      Go into the niogit/{spacename}/.config/config.git directory

      git worktree add ~/config

      cd ~/config

      git checkout master

      sed -i "s#org.guvnor.structure.contributors.Contributor#org.uberfire.security.Contributor#g" config/SpaceInfo.json

      git add config/SpaceInfo.json

      git commit -m "Rename Contributor"

            eignatow Eder Ignatowicz
            mike.lothian@sky.uk Mike Lothian
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated: