-
Notifications
You must be signed in to change notification settings - Fork 38.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Spring Framework 6.0.8 appears to cause issues in OSGi environment #30389
Comments
This problem also occurs in version 5.3.27 upgrading from version 5.3.26. Our services are based on OSGI, gemini-blueprint and spring The submission that causes this problem is 0c80e5f. |
I can confirm this issue with spring-aop 5.3.27 in an OSGi gemini-blueprint environment. Our stack trace is identical to the one posted by @chrislake in #30389 (comment). |
Sorry for not noticing this earlier... We'll fix that regression for the upcoming 6.0.10 and 5.3.28 releases, possibly through a more specific check for the JDK class proxying scenario in #30115. |
Affects: Spring Framework 6.0.8
After updating Spring Framework from 6.0.7 to 6.0.8, class loading in our OSGi application appears to be broken. I have narrowed this down to being caused by the change for issue #30115.
Initially, the
classLoader
passed togetProxy()
contains aBundleDelegatingClassLoader
:BundleDelegatingClassLoader for [My Spring Bundle (a.b.c.symbolic.name;singleton:=true)]
The
this.proxiedInterfaces
contains four interfaces, once of which is ours:[interface a.b.c.MyInterface, interface org.springframework.aop.SpringProxy, interface org.springframework.aop.framework.Advised, interface org.springframework.core.DecoratingProxy]
When the original
classLoader
is used, we get a Proxy back for the implementing class. However, for the updatedclassLoader
EquinoxClassLoader
:org.eclipse.osgi.internal.loader.EquinoxClassLoader@6af06218[org.springframework.spring-aop:6.0.8(id=427)]
We now get an error:
Stack Trace
The text was updated successfully, but these errors were encountered: