Uploaded image for project: 'Confluence Data Center'
  1. Confluence Data Center
  2. CONFSERVER-4041

Uploaded component plugins aren't unregistered when the plugin is uninstalled

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • Medium
    • 2.2.1
    • 1.4.3
    • None

    Description

      If you have a component in an uploaded plugin, and you uninstall the plugin, recompile the plugin and upload it again, you'll get errors whenever the component is accessed. I'm guessing it's because the old object (and thus, the old class) is still in memory as a component. This may be impossible to get around, but if you could, it would make developing plugins with components much faster, since I currently have to bounce the server to get stuff working again, which kind of defeats the purpose of uploaded plugins...

      Here's the error. Hope it's helpful...

      org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.randombits.confluence.temporal.TemporalMacro' defined in null: Error setting property values; nested exception is org.springframework.beans.PropertyAccessExceptionsException: PropertyAccessExceptionsException (1 errors); nested propertyAccessExceptions are: [org.springframework.beans.TypeMismatchException: Failed to convert property value of type [org.randombits.confluence.temporal.TemporalContentManager] to required type [org.randombits.confluence.temporal.TemporalContentManager] for property 'temporalContentManager']
      PropertyAccessExceptionsException (1 errors)
      org.springframework.beans.TypeMismatchException: Failed to convert property value of type [org.randombits.confluence.temporal.TemporalContentManager] to required type [org.randombits.confluence.temporal.TemporalContentManager] for property 'temporalContentManager'
      at org.springframework.beans.BeanWrapperImpl.doTypeConversionIfNecessary(BeanWrapperImpl.java:905)
      at org.springframework.beans.BeanWrapperImpl.setPropertyValue(BeanWrapperImpl.java:673)
      at org.springframework.beans.BeanWrapperImpl.setPropertyValue(BeanWrapperImpl.java:588)
      at org.springframework.beans.BeanWrapperImpl.setPropertyValue(BeanWrapperImpl.java:720)
      at org.springframework.beans.BeanWrapperImpl.setPropertyValues(BeanWrapperImpl.java:747)
      at org.springframework.beans.BeanWrapperImpl.setPropertyValues(BeanWrapperImpl.java:736)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:844)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:662)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowire(AbstractAutowireCapableBeanFactory.java:141)
      at bucket.container.SpringContainerContext.createComponent(SpringContainerContext.java:114)
      etc...

      Attachments

        Activity

          People

            jnolen Jonathan Nolen (Inactive)
            david@randombits.org David Peterson
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: