You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Interestingly, both of those cases are triggered by toString() invocations, with CGLIB trying to create its fast-class adapter for java.lang.Object. We might have to explicitly bypass such attempts, using a regular reflective dispatch instead.
It turns out that this is not easy to reproduce. Are there any specific constraints in your scenario, such as restricted visibility of your classes?
In general, we're bypassing straight invocations of java.lang.Object methods already. It might make a difference if you cast your instance to Object before calling toString() on it? Of course this is not a long-term solution, we need to make this work with subclass overrides as well...
We're bypassing overridden equals / hashCode / toString methods now, performing straight reflective invocations to them (without CGLIB trying to create a fast class for them).
I couldn't actually reproduce the warning on JDK 11 but hopefully this defensive check makes it disappear in your scenario as well now.
Matej Spiller-Muys opened SPR-17500 and commented
There are still some cases left that should be looked at. This WARNING is displayed when running application for a while.
I am using Java 11.0.1 with Spring Boot 2.1.0.
Affects: 5.1.2
Issue Links:
Referenced from: commits 2a5d769
The text was updated successfully, but these errors were encountered: