I have been trying to run the archetype example and another project I am trying to upgrade from 6.5 to 7.0.0, but I have failed to do so.
The archetype example runs ok on jetty and the project I was trying to upgrade runs ok both in jetty and was 8.5.5.7, but after changing the dependencies I keep getting the exception below and I am not quite sure if it is a problem with configuration (as everything worked ok with 6.5), with wicket 7.0.0 as the exception comes from inside wicket or from WAS8.5.5.7.
[ERROR ] SRVE0271E: Uncaught init() exception created by servlet [wicket-servlet] in application [blahblah]: javax.servlet.ServletException: java.lang.ClassCastException: com.ibm.ws.artifact.url.internal.WSJarURLStreamHandler$WSJarURLConnectionImpl cannot be cast to java.net.JarURLConnection at org.apache.wicket.protocol.http.WicketFilter.init(WicketFilter.java:455) at org.apache.wicket.protocol.http.WicketServlet.init(WicketServlet.java:271) at javax.servlet.GenericServlet.init(GenericServlet.java:244) at com.ibm.ws.webcontainer.servlet.ServletWrapper.init(ServletWrapper.java:332) at [internal classes] Caused by: java.lang.ClassCastException: com.ibm.ws.artifact.url.internal.WSJarURLStreamHandler$WSJarURLConnectionImpl cannot be cast to java.net.JarURLConnection at org.apache.wicket.Application.collectWicketProperties(Application.java:503) at org.apache.wicket.Application.initializeComponents(Application.java:593) at org.apache.wicket.Application.initApplication(Application.java:918) at org.apache.wicket.protocol.http.WicketFilter.init(WicketFilter.java:429) ... 4 more [ERROR ] SRVE0315E: An exception occurred: java.lang.Throwable: javax.servlet.ServletException: java.lang.ClassCastException: com.ibm.ws.artifact.url.internal.WSJarURLStreamHandler$WSJarURLConnectionImpl cannot be cast to java.net.JarURLConnection at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:4900) at [internal classes] Caused by: javax.servlet.ServletException: java.lang.ClassCastException: com.ibm.ws.artifact.url.internal.WSJarURLStreamHandler$WSJarURLConnectionImpl cannot be cast to java.net.JarURLConnection at org.apache.wicket.protocol.http.WicketFilter.init(WicketFilter.java:455) at org.apache.wicket.protocol.http.WicketServlet.init(WicketServlet.java:271) at javax.servlet.GenericServlet.init(GenericServlet.java:244) at com.ibm.ws.webcontainer.servlet.ServletWrapper.init(ServletWrapper.java:332) ... 1 more Caused by: java.lang.ClassCastException: com.ibm.ws.artifact.url.internal.WSJarURLStreamHandler$WSJarURLConnectionImpl cannot be cast to java.net.JarURLConnection at org.apache.wicket.Application.collectWicketProperties(Application.java:503) at org.apache.wicket.Application.initializeComponents(Application.java:593) at org.apache.wicket.Application.initApplication(Application.java:918) at org.apache.wicket.protocol.http.WicketFilter.init(WicketFilter.java:429) ... 4 more
UPDATE------------ as of wicket 7.1.0 there isn't an issue anymore. As mentioned in @klopfdreh answer there was a compatibility issue, I am accepting that answer, because I think the discussion in the comments may have helped the wicket team fix/pinpoint the issue in the 7.1.0 release.
It is only an assumption, but it appears that the problem seems to be close to this one:
https://bugs.eclipse.org/bugs/show_bug.cgi?id=430180
As of one comment, can you try to set the following options at your "jvm.options":
-Dcom.ibm.websphere.persistence.DisableJpaFormatUrlProtocol=true
To implement it without disable the "wsjar" protocol we need more input about the implementation of "WSJarURLConnectionImpl" - the only method called from the "JarURLConnection" is "getJarFile()", so the question here is: Does "WSJarURLConnectionImpl" also provide this method and returns it a JarFile? Then we may use reflections at this place.