Download the beta from our site to start testing your app for compatibility with the changes. Be sure to take a look at our Preparing for Confluence 10.0 guide to find out what you need to do to make your app compatible. We’ll update that page regularly, so keep an eye on it to see any changes.
Reminder: for future release updates, make sure you visit the Atlassian changelog, and consider subscribing to the RSS feed.
Hi,
I tested the previous EAPs and all worked fine. In the beta I now get this error on app install, and the app does not enable
2025-07-09 12:30:20,350 ERROR [ThreadPoolAsyncTaskExecutor::Thread 36] [internal.dependencies.startup.DependencyWaiterApplicationContextExecutor] fail Unable to create application context for [foo.bar.app-confluence-common], unsatisfied dependencies: none
-- url: /rest/plugins/1.0/ | userName: admin | referer: http://192.168.1.66:8090/plugins/servlet/upm | traceId: 834e207797252ff7
java.lang.IllegalStateException: Unable to load cache item
at org.springframework.cglib.core.internal.LoadingCache.createEntry(LoadingCache.java:75)
at org.springframework.cglib.core.internal.LoadingCache.get(LoadingCache.java:34)
at org.springframework.cglib.core.AbstractClassGenerator$ClassLoaderData.get(AbstractClassGenerator.java:129)
at org.springframework.cglib.core.AbstractClassGenerator.create(AbstractClassGenerator.java:321)
at org.springframework.cglib.proxy.Enhancer.createHelper(Enhancer.java:562)
at org.springframework.cglib.proxy.Enhancer.createClass(Enhancer.java:407)
at org.springframework.context.annotation.ConfigurationClassEnhancer.createClass(ConfigurationClassEnhancer.java:207)
at org.springframework.context.annotation.ConfigurationClassEnhancer.enhance(ConfigurationClassEnhancer.java:128)
at org.springframework.context.annotation.ConfigurationClassPostProcessor.enhanceConfigurationClasses(ConfigurationClassPostProcessor.java:539)
at org.springframework.context.annotation.ConfigurationClassPostProcessor.postProcessBeanFactory(ConfigurationClassPostProcessor.java:311)
at org.eclipse.gemini.blueprint.context.support.AbstractDelegatedExecutionApplicationContext.invokeBeanFactoryPostProcessors(AbstractDelegatedExecutionApplicationContext.java:532)
at org.eclipse.gemini.blueprint.context.support.AbstractDelegatedExecutionApplicationContext.invokeBeanFactoryPostProcessors(AbstractDelegatedExecutionApplicationContext.java:451)
at org.eclipse.gemini.blueprint.context.support.AbstractDelegatedExecutionApplicationContext.invokeBeanFactoryPostProcessors(AbstractDelegatedExecutionApplicationContext.java:359)
at org.eclipse.gemini.blueprint.context.support.AbstractDelegatedExecutionApplicationContext$3.run(AbstractDelegatedExecutionApplicationContext.java:251)
at org.eclipse.gemini.blueprint.util.internal.PrivilegedUtils.executeWithCustomTCCL(PrivilegedUtils.java:85)
at org.eclipse.gemini.blueprint.context.support.AbstractDelegatedExecutionApplicationContext.startRefresh(AbstractDelegatedExecutionApplicationContext.java:217)
at org.eclipse.gemini.blueprint.extender.internal.dependencies.startup.DependencyWaiterApplicationContextExecutor.stageOne(DependencyWaiterApplicationContextExecutor.java:224)
at org.eclipse.gemini.blueprint.extender.internal.dependencies.startup.DependencyWaiterApplicationContextExecutor.refresh(DependencyWaiterApplicationContextExecutor.java:177)
at org.eclipse.gemini.blueprint.context.support.AbstractDelegatedExecutionApplicationContext.refresh(AbstractDelegatedExecutionApplicationContext.java:154)
at org.eclipse.gemini.blueprint.extender.internal.activator.LifecycleManager$1.run(LifecycleManager.java:212)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
at java.base/java.lang.Thread.run(Thread.java:1583)
Caused by: java.lang.ExceptionInInitializerError
at java.base/java.lang.Class.forName0(Native Method)
at java.base/java.lang.Class.forName(Class.java:534)
at java.base/java.lang.Class.forName(Class.java:513)
at org.springframework.cglib.core.ReflectUtils.defineClass(ReflectUtils.java:581)
at org.springframework.cglib.core.AbstractClassGenerator.generate(AbstractClassGenerator.java:375)
at org.springframework.cglib.proxy.Enhancer.generate(Enhancer.java:575)
at org.springframework.cglib.core.AbstractClassGenerator$ClassLoaderData.lambda$new$1(AbstractClassGenerator.java:107)
at org.springframework.cglib.core.internal.LoadingCache.lambda$createEntry$1(LoadingCache.java:52)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317)
at org.springframework.cglib.core.internal.LoadingCache.createEntry(LoadingCache.java:57)
... 22 more
Caused by: java.lang.ClassNotFoundException: org.springframework.beans.factory.BeanFactoryAware not found by foo.bar.app-confluence-common [286]
at org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1591)
at org.apache.felix.framework.BundleWiringImpl.access$300(BundleWiringImpl.java:79)
at org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1976)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:526)
at java.base/java.lang.Class.forName0(Native Method)
at java.base/java.lang.Class.forName(Class.java:421)
at java.base/java.lang.Class.forName(Class.java:412)
at foo.bar.app.confluence.common.config.SpringBeansConfig$$SpringCGLIB$$0.CGLIB$STATICHOOK361(<generated>)
at foo.bar.app.confluence.common.config.SpringBeansConfig$$SpringCGLIB$$0.<clinit>(<generated>)
... 32 more
I do not use the org.springframework.beans.factory.BeanFactoryAware anywhere in my code. Do I need to add some compile scope dependency?
Hello,
I also agree that earlier EAP versions worked fine.
But running 10.0.0-beta2 we get the following exception related to the Atlassian Spring Scanner:
org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: Unable to locate Spring NamespaceHandler for XML schema namespace [http://www.atlassian.com/schema/atlassian-scanner/2]
I’m not aware of any new changes in either of these areas. If you are certain that your plugin worked with the latest EAP but not the Beta, if you could please provide sample plugin source for reproduction and I will look into this.
@Kusal ok thanks for checking. Some how it now works, I had to add an !javax.annotation to the OSGI Imports and update to latest platform version. Now the app enables fine.
Thanks for the clarification @Kusal.
For some reason building the plugin locally and installing it worked fine, but the JAR generated by our build pipeline did not.
Comparing the two JARs it became apparent that the JAR not working included spring-tx and spring-beans. I added spring-tx in earlier milestone versions to make the plugin compile.
Long story short, removing the spring-tx dependency resolved the issue