Details
-
Bug
-
Resolution: Fixed
-
Medium
-
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...