JSON parsing error thrown during System Startup
Symptoms
The following appears in the atlassian-confluence.log
:
2011-11-30 15:21:11,238 ERROR [Spring executor 4] [extender.internal.activator.ContextLoaderListener] onOsgiApplicationEvent Application context refresh failed (NonValidatingOsgiBundleXmlApplicationContext(bundle=com.atlassian.upm.atlassian-universal-plugin-manager-plugin, config=osgibundle:/META-INF/spring/*.xml))
org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'linkBuilder' defined in URL [bundle://65.0:0/META-INF/spring/atlassian-plugins-components.xml]: Unsatisfied dependency expressed through constructor argument with index 1 of type [com.atlassian.upm.PluginAccessorAndController]: : Error creating bean with name 'pluginAccessorAndController' defined in URL [bundle://65.0:0/META-INF/spring/atlassian-plugins-components.xml]: Unsatisfied dependency expressed through constructor argument with index 2 of type [com.atlassian.upm.log.AuditLogService]: : Error creating bean with name 'auditLogService' defined in URL [bundle://65.0:0/META-INF/spring/atlassian-plugins-components.xml]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [com.atlassian.upm.log.PluginSettingsAuditLogService]: Constructor threw exception; nested exception is java.lang.RuntimeException: Failed to parse AuditLogEntry from JSON string: {"username":"Confluence","date":1322652622518,"i18nKey":"upm.auditLog.system.startup","entryType":"SYSTEM_STARTUP","params":[]}; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'auditLogService' defined in URL [bundle://65.0:0/META-INF/spring/atlassian-plugins-components.xml]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [com.atlassian.upm.log.PluginSettingsAuditLogService]: Constructor threw exception; nested exception is java.lang.RuntimeException: Failed to parse AuditLogEntry from JSON string: {"username":"Confluence","date":1322652622518,"i18nKey":"upm.auditLog.system.startup","entryType":"SYSTEM_STARTUP","params":[]}; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'pluginAccessorAndController' defined in URL [bundle://65.0:0/META-INF/spring/atlassian-plugins-components.xml]: Unsatisfied dependency expressed through constructor argument with index 2 of type [com.atlassian.upm.log.AuditLogService]: : Error creating bean with name 'auditLogService' defined in URL [bundle://65.0:0/META-INF/spring/atlassian-plugins-components.xml]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [com.atlassian.upm.log.PluginSettingsAuditLogService]: Constructor threw exception; nested exception is java.lang.RuntimeException: Failed to parse AuditLogEntry from JSON string: {"username":"Confluence","date":1322652622518,"i18nKey":"upm.auditLog.system.startup","entryType":"SYSTEM_STARTUP","params":[]}; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'auditLogService' defined in URL [bundle://65.0:0/META-INF/spring/atlassian-plugins-components.xml]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [com.atlassian.upm.log.PluginSettingsAuditLogService]: Constructor threw exception; nested exception is java.lang.RuntimeException: Failed to parse AuditLogEntry from JSON string: {"username":"Confluence","date":1322652622518,"i18nKey":"upm.auditLog.system.startup","entryType":"SYSTEM_STARTUP","params":[]}
at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:591)
at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:193)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:925)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:835)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:440)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
at java.security.AccessController.doPrivileged(Native Method)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:429)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:728)
at org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext.access$1600(AbstractDelegatedExecutionApplicationContext.java:69)
at org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext$4.run(AbstractDelegatedExecutionApplicationContext.java:355)
at org.springframework.osgi.util.internal.PrivilegedUtils.executeWithCustomTCCL(PrivilegedUtils.java:85)
at org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext.completeRefresh(AbstractDelegatedExecutionApplicationContext.java:320)
at org.springframework.osgi.extender.internal.dependencies.startup.DependencyWaiterApplicationContextExecutor$CompleteRefreshTask.run(DependencyWaiterApplicationContextExecutor.java:132)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:619)
Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'pluginAccessorAndController' defined in URL [bundle://65.0:0/META-INF/spring/atlassian-plugins-components.xml]: Unsatisfied dependency expressed through constructor argument with index 2 of type [com.atlassian.upm.log.AuditLogService]: : Error creating bean with name 'auditLogService' defined in URL [bundle://65.0:0/META-INF/spring/atlassian-plugins-components.xml]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [com.atlassian.upm.log.PluginSettingsAuditLogService]: Constructor threw exception; nested exception is java.lang.RuntimeException: Failed to parse AuditLogEntry from JSON string: {"username":"Confluence","date":1322652622518,"i18nKey":"upm.auditLog.system.startup","entryType":"SYSTEM_STARTUP","params":[]}; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'auditLogService' defined in URL [bundle://65.0:0/META-INF/spring/atlassian-plugins-components.xml]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [com.atlassian.upm.log.PluginSettingsAuditLogService]: Constructor threw exception; nested exception is java.lang.RuntimeException: Failed to parse AuditLogEntry from JSON string: {"username":"Confluence","date":1322652622518,"i18nKey":"upm.auditLog.system.startup","entryType":"SYSTEM_STARTUP","params":[]}
at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:591)
at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:193)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:925)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:835)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:440)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
at java.security.AccessController.doPrivileged(Native Method)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.findAutowireCandidates(DefaultListableBeanFactory.java:671)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:610)
at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:622)
at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:584)
... 22 more
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'auditLogService' defined in URL [bundle://65.0:0/META-INF/spring/atlassian-plugins-components.xml]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [com.atlassian.upm.log.PluginSettingsAuditLogService]: Constructor threw exception; nested exception is java.lang.RuntimeException: Failed to parse AuditLogEntry from JSON string: {"username":"Confluence","date":1322652622518,"i18nKey":"upm.auditLog.system.startup","entryType":"SYSTEM_STARTUP","params":[]}
at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:254)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:925)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:835)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:440)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
at java.security.AccessController.doPrivileged(Native Method)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.findAutowireCandidates(DefaultListableBeanFactory.java:671)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:610)
at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:622)
at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:584)
... 38 more
Caused by: org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [com.atlassian.upm.log.PluginSettingsAuditLogService]: Constructor threw exception; nested exception is java.lang.RuntimeException: Failed to parse AuditLogEntry from JSON string: {"username":"Confluence","date":1322652622518,"i18nKey":"upm.auditLog.system.startup","entryType":"SYSTEM_STARTUP","params":[]}
at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:115)
at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:87)
at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:248)
... 53 more
Caused by: java.lang.RuntimeException: Failed to parse AuditLogEntry from JSON string: {"username":"Confluence","date":1322652622518,"i18nKey":"upm.auditLog.system.startup","entryType":"SYSTEM_STARTUP","params":[]}
at com.atlassian.upm.log.PluginSettingsAuditLogService$4.apply(PluginSettingsAuditLogService.java:406)
at com.atlassian.upm.log.PluginSettingsAuditLogService$4.apply(PluginSettingsAuditLogService.java:397)
at com.google.common.collect.Iterators$8.next(Iterators.java:697)
at com.google.common.collect.Iterators$7.computeNext(Iterators.java:602)
at com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:135)
at com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:130)
at com.google.common.collect.Lists.newArrayList(Lists.java:131)
at com.google.common.collect.Collections2$FilteredCollection.toArray(Collections2.java:215)
at java.util.ArrayList.<init>(ArrayList.java:131)
at com.google.common.collect.Lists.newArrayList(Lists.java:111)
at com.google.common.collect.Ordering.sortedCopy(Ordering.java:304)
at com.atlassian.upm.log.PluginSettingsAuditLogService.purgeEntriesAndTransform(PluginSettingsAuditLogService.java:412)
at com.atlassian.upm.log.PluginSettingsAuditLogService.saveEntryAndPurge(PluginSettingsAuditLogService.java:342)
at com.atlassian.upm.log.PluginSettingsAuditLogService.logI18nMessageWithUsername(PluginSettingsAuditLogService.java:113)
at com.atlassian.upm.log.PluginSettingsAuditLogService.<init>(PluginSettingsAuditLogService.java:92)
at com.atlassian.upm.log.PluginSettingsAuditLogService.<init>(PluginSettingsAuditLogService.java:99)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:100)
... 55 more
Caused by: org.codehaus.jackson.map.JsonMappingException: Unrecognized field "entryType" (Class com.atlassian.upm.log.AuditLogEntry), not marked as ignorable
at [Source: java.io.StringReader@3ff47b18; line: 1, column: 86]
at org.codehaus.jackson.map.JsonMappingException.from(JsonMappingException.java:159)
at org.codehaus.jackson.map.deser.StdDeserializationContext.unknownFieldException(StdDeserializationContext.java:174)
at org.codehaus.jackson.map.deser.StdDeserializer.reportUnknownProperty(StdDeserializer.java:317)
at org.codehaus.jackson.map.deser.StdDeserializer.handleUnknownProperty(StdDeserializer.java:303)
at org.codehaus.jackson.map.deser.BeanDeserializer.handleUnknownProperty(BeanDeserializer.java:505)
at org.codehaus.jackson.map.deser.BeanDeserializer._deserializeUsingPropertyBased(BeanDeserializer.java:450)
at org.codehaus.jackson.map.deser.BeanDeserializer.deserializeFromObject(BeanDeserializer.java:323)
at org.codehaus.jackson.map.deser.BeanDeserializer.deserialize(BeanDeserializer.java:281)
at org.codehaus.jackson.map.ObjectMapper._readMapAndClose(ObjectMapper.java:1282)
at org.codehaus.jackson.map.ObjectMapper.readValue(ObjectMapper.java:885)
at com.atlassian.upm.log.PluginSettingsAuditLogService$4.apply(PluginSettingsAuditLogService.java:402)
... 75 more
Cause
Newer versions of the Universal Plugin Manager implement types which conflict with older UPM audit log entries.
This was first reported in UPM-1350.
Resolution
- Install UPM 1.6.2 or above.
- Restart Confluence
Last modified on Nov 14, 2018
Powered by Confluence and Scroll Viewport.