[
https://issues.apache.org/jira/browse/WICKET-6913?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17399989#comment-17399989
]
Emond Papegaaij commented on WICKET-6913:
-----------------------------------------
Or we could copy the new module from master to 9.x under a new name
(wicket-oic-bytebuddy) and provide both. I don't think we can just change the
implementation, as minor versions are supposed to be drop-in replacements, and
IMHO that's not true if the dependencies change. However, you might also argue
that this is just an implementation detail and the API doesn't change. I do
agree with Robert, that we should try to support Java 17, the next LTS, for
Wicket 9.x.
> Java 17 compatibility
> ---------------------
>
> Key: WICKET-6913
> URL: https://issues.apache.org/jira/browse/WICKET-6913
> Project: Wicket
> Issue Type: Bug
> Components: wicket-spring
> Affects Versions: 9.4.0
> Reporter: Robert Bain
> Assignee: Martin Tzvetanov Grigorov
> Priority: Major
> Fix For: 10.0.0
>
>
> Wicket's use of cglib means that as of Java 16, you need to specify
> --illegal-access=permit. As of Java 17, this is no longer possible, which
> I've verified using a JDK 17 Early-Access Build.
> See [https://github.com/cglib/cglib/issues/191]
> See
> [https://stackoverflow.com/questions/66974846/java-lang-exceptionininitializererror-with-java-16-j-l-classformaterror-access]
>
> {code}
> Caused by: java.lang.NoClassDefFoundError: Could not initialize class
> net.sf.cglib.proxy.EnhancerCaused by: java.lang.NoClassDefFoundError: Could
> not initialize class net.sf.cglib.proxy.Enhancer at
> org.apache.wicket.proxy.LazyInitProxyFactory.createProxy(LazyInitProxyFactory.java:182)
> at
> org.apache.wicket.spring.injection.annot.AnnotProxyFieldValueFactory.getFieldValue(AnnotProxyFieldValueFactory.java:166)
> at org.apache.wicket.injection.Injector.inject(Injector.java:111) at
> org.apache.wicket.spring.injection.annot.SpringComponentInjector.inject(SpringComponentInjector.java:124)
> at
> org.apache.wicket.spring.injection.annot.SpringComponentInjector.onInstantiation(SpringComponentInjector.java:130)
> at
> org.apache.wicket.application.ComponentInstantiationListenerCollection$1.notify(ComponentInstantiationListenerCollection.java:38)
> at
> org.apache.wicket.application.ComponentInstantiationListenerCollection$1.notify(ComponentInstantiationListenerCollection.java:34)
> at
> org.apache.wicket.util.listener.ListenerCollection.notify(ListenerCollection.java:80)
> at
> org.apache.wicket.application.ComponentInstantiationListenerCollection.onInstantiation(ComponentInstantiationListenerCollection.java:33)
> at org.apache.wicket.Component.<init>(Component.java:690) at
> org.apache.wicket.MarkupContainer.<init>(MarkupContainer.java:179) at
> org.apache.wicket.Page.<init>(Page.java:171) at
> org.apache.wicket.Page.<init>(Page.java:135) at
> org.apache.wicket.markup.html.WebPage.<init>(WebPage.java:74)
> {code}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)